// This file is automatically generated, so please do not edit it.
// @generated by `flutter_rust_bridge`@ 2.12.0.

#![allow(
    non_camel_case_types,
    unused,
    non_snake_case,
    clippy::needless_return,
    clippy::redundant_closure_call,
    clippy::redundant_closure,
    clippy::useless_conversion,
    clippy::unit_arg,
    clippy::unused_unit,
    clippy::double_parens,
    clippy::let_and_return,
    clippy::too_many_arguments,
    clippy::match_single_binding,
    clippy::clone_on_copy,
    clippy::let_unit_value,
    clippy::deref_addrof,
    clippy::explicit_auto_deref,
    clippy::borrow_deref_ref,
    clippy::uninlined_format_args,
    clippy::needless_borrow
)]

// Section: imports

use crate::api::accounts::*;
use crate::api::messages::*;
use crate::api::relay_defaults::*;
use crate::api::signer::*;
use crate::api::utils::*;
use crate::api::*;
use crate::*;
use flutter_rust_bridge::for_generated::byteorder::{NativeEndian, ReadBytesExt, WriteBytesExt};
use flutter_rust_bridge::for_generated::{Lifetimeable, Lockable, transform_result_dco};
use flutter_rust_bridge::{Handler, IntoIntoDart};

// Section: boilerplate

flutter_rust_bridge::frb_generated_boilerplate!(
    default_stream_sink_codec = SseCodec,
    default_rust_opaque = RustOpaqueMoi,
    default_rust_auto_opaque = RustAutoOpaqueMoi,
);
pub(crate) const FLUTTER_RUST_BRIDGE_CODEGEN_VERSION: &str = "2.12.0";
pub(crate) const FLUTTER_RUST_BRIDGE_CODEGEN_CONTENT_HASH: i32 = -1175481794;

// Section: executor

flutter_rust_bridge::frb_generated_default_handler!();

// Section: wire_funcs

fn wire__crate__api__signer__DartSigner_new_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_normal::<flutter_rust_bridge::for_generated::SseCodec, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "DartSigner_new",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <PublicKey>::sse_decode(&mut deserializer);
            let api_sign_event = decode_DartFn_Inputs_String_Output_String_AnyhowException(
                <flutter_rust_bridge::DartOpaque>::sse_decode(&mut deserializer),
            );
            let api_nip04_encrypt =
                decode_DartFn_Inputs_String_String_Output_String_AnyhowException(
                    <flutter_rust_bridge::DartOpaque>::sse_decode(&mut deserializer),
                );
            let api_nip04_decrypt =
                decode_DartFn_Inputs_String_String_Output_String_AnyhowException(
                    <flutter_rust_bridge::DartOpaque>::sse_decode(&mut deserializer),
                );
            let api_nip44_encrypt =
                decode_DartFn_Inputs_String_String_Output_String_AnyhowException(
                    <flutter_rust_bridge::DartOpaque>::sse_decode(&mut deserializer),
                );
            let api_nip44_decrypt =
                decode_DartFn_Inputs_String_String_Output_String_AnyhowException(
                    <flutter_rust_bridge::DartOpaque>::sse_decode(&mut deserializer),
                );
            deserializer.end();
            move |context| {
                transform_result_sse::<_, ()>((move || {
                    let output_ok = Result::<_, ()>::Ok(crate::api::signer::DartSigner::new(
                        api_pubkey,
                        api_sign_event,
                        api_nip04_encrypt,
                        api_nip04_decrypt,
                        api_nip44_encrypt,
                        api_nip44_decrypt,
                    ))?;
                    Ok(output_ok)
                })())
            }
        },
    )
}
fn wire__crate__api__account_groups__accept_account_group_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "accept_account_group",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_mls_group_id = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::account_groups::accept_account_group(
                            api_account_pubkey,
                            api_mls_group_id,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__accounts__account_follows_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "account_follows",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::accounts::account_follows(api_pubkey).await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__accounts__account_key_package_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "account_key_package",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::accounts::account_key_package(api_pubkey).await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__accounts__account_key_packages_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "account_key_packages",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::accounts::account_key_packages(api_account_pubkey).await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__accounts__account_relays_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "account_relays",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_relay_type = <RelayType>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::accounts::account_relays(api_pubkey, api_relay_type)
                                .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__accounts__account_settings_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "account_settings",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::accounts::account_settings(api_pubkey).await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__groups__active_groups_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "active_groups",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::groups::active_groups(api_pubkey).await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__accounts__add_account_relay_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "add_account_relay",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_url = <String>::sse_decode(&mut deserializer);
            let api_relay_type = <RelayType>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::accounts::add_account_relay(
                            api_pubkey,
                            api_url,
                            api_relay_type,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__groups__add_members_to_group_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "add_members_to_group",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_group_id = <String>::sse_decode(&mut deserializer);
            let api_member_pubkeys = <Vec<String>>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::groups::add_members_to_group(
                            api_pubkey,
                            api_group_id,
                            api_member_pubkeys,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__error__api_error_error_type_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_normal::<flutter_rust_bridge::for_generated::SseCodec, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "api_error_error_type",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_that = <crate::api::error::ApiError>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| {
                transform_result_sse::<_, ()>((move || {
                    let output_ok =
                        Result::<_, ()>::Ok(crate::api::error::ApiError::error_type(&api_that))?;
                    Ok(output_ok)
                })())
            }
        },
    )
}
fn wire__crate__api__error__api_error_message_text_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_normal::<flutter_rust_bridge::for_generated::SseCodec, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "api_error_message_text",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_that = <crate::api::error::ApiError>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| {
                transform_result_sse::<_, ()>((move || {
                    let output_ok =
                        Result::<_, ()>::Ok(crate::api::error::ApiError::message_text(&api_that))?;
                    Ok(output_ok)
                })())
            }
        },
    )
}
fn wire__crate__api__app_settings_language_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_normal::<flutter_rust_bridge::for_generated::SseCodec, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "app_settings_language",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_app_settings = <RustOpaqueMoi<
                flutter_rust_bridge::for_generated::RustAutoOpaqueInner<AppSettings>,
            >>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| {
                transform_result_sse::<_, ()>((move || {
                    let mut api_app_settings_guard = None;
                    let decode_indices_ =
                        flutter_rust_bridge::for_generated::lockable_compute_decode_order(vec![
                            flutter_rust_bridge::for_generated::LockableOrderInfo::new(
                                &api_app_settings,
                                0,
                                false,
                            ),
                        ]);
                    for i in decode_indices_ {
                        match i {
                            0 => {
                                api_app_settings_guard =
                                    Some(api_app_settings.lockable_decode_sync_ref())
                            }
                            _ => unreachable!(),
                        }
                    }
                    let api_app_settings_guard = api_app_settings_guard.unwrap();
                    let output_ok = Result::<_, ()>::Ok(crate::api::app_settings_language(
                        &*api_app_settings_guard,
                    ))?;
                    Ok(output_ok)
                })())
            }
        },
    )
}
fn wire__crate__api__app_settings_theme_mode_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_normal::<flutter_rust_bridge::for_generated::SseCodec, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "app_settings_theme_mode",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_app_settings = <RustOpaqueMoi<
                flutter_rust_bridge::for_generated::RustAutoOpaqueInner<AppSettings>,
            >>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| {
                transform_result_sse::<_, ()>((move || {
                    let mut api_app_settings_guard = None;
                    let decode_indices_ =
                        flutter_rust_bridge::for_generated::lockable_compute_decode_order(vec![
                            flutter_rust_bridge::for_generated::LockableOrderInfo::new(
                                &api_app_settings,
                                0,
                                false,
                            ),
                        ]);
                    for i in decode_indices_ {
                        match i {
                            0 => {
                                api_app_settings_guard =
                                    Some(api_app_settings.lockable_decode_sync_ref())
                            }
                            _ => unreachable!(),
                        }
                    }
                    let api_app_settings_guard = api_app_settings_guard.unwrap();
                    let output_ok = Result::<_, ()>::Ok(crate::api::app_settings_theme_mode(
                        &*api_app_settings_guard,
                    ))?;
                    Ok(output_ok)
                })())
            }
        },
    )
}
fn wire__crate__api__account_groups__archive_chat_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "archive_chat",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_mls_group_id = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::account_groups::archive_chat(
                            api_account_pubkey,
                            api_mls_group_id,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__mute_list__block_user_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "block_user",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_target_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::mute_list::block_user(
                            api_account_pubkey,
                            api_target_pubkey,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__groups__clear_chat_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "clear_chat",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_group_id = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::groups::clear_chat(api_account_pubkey, api_group_id)
                                .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__notifications__clear_push_registration_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "clear_push_registration",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::notifications::clear_push_registration(api_pubkey).await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__groups__create_group_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "create_group",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_creator_pubkey = <String>::sse_decode(&mut deserializer);
            let api_member_pubkeys = <Vec<String>>::sse_decode(&mut deserializer);
            let api_admin_pubkeys = <Vec<String>>::sse_decode(&mut deserializer);
            let api_group_name = <String>::sse_decode(&mut deserializer);
            let api_group_description = <String>::sse_decode(&mut deserializer);
            let api_group_type = <crate::api::groups::GroupType>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::groups::create_group(
                            api_creator_pubkey,
                            api_member_pubkeys,
                            api_admin_pubkeys,
                            api_group_name,
                            api_group_description,
                            api_group_type,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__accounts__create_identity_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "create_identity",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::accounts::create_identity().await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__create_whitenoise_config_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_normal::<flutter_rust_bridge::for_generated::SseCodec, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "create_whitenoise_config",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_data_dir = <String>::sse_decode(&mut deserializer);
            let api_logs_dir = <String>::sse_decode(&mut deserializer);
            let api_default_relay_urls = <Option<Vec<String>>>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| {
                transform_result_sse::<_, ()>((move || {
                    let output_ok = Result::<_, ()>::Ok(crate::api::create_whitenoise_config(
                        api_data_dir,
                        api_logs_dir,
                        api_default_relay_urls,
                    ))?;
                    Ok(output_ok)
                })())
            }
        },
    )
}
fn wire__crate__api__relays__debug_relay_control_state_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "debug_relay_control_state",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::relays::debug_relay_control_state().await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__account_groups__decline_account_group_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "decline_account_group",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_mls_group_id = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::account_groups::decline_account_group(
                            api_account_pubkey,
                            api_mls_group_id,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__relay_defaults__default_relay_urls_impl(
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) -> flutter_rust_bridge::for_generated::WireSyncRust2DartSse {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_sync::<flutter_rust_bridge::for_generated::SseCodec, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "default_relay_urls",
            port: None,
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Sync,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            deserializer.end();
            transform_result_sse::<_, ()>((move || {
                let output_ok =
                    Result::<_, ()>::Ok(crate::api::relay_defaults::default_relay_urls())?;
                Ok(output_ok)
            })())
        },
    )
}
fn wire__crate__api__relay_defaults__default_relay_urls_parsed_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_normal::<flutter_rust_bridge::for_generated::SseCodec, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "default_relay_urls_parsed",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            deserializer.end();
            move |context| {
                transform_result_sse::<_, crate::api::error::ApiError>((move || {
                    let output_ok = crate::api::relay_defaults::default_relay_urls_parsed()?;
                    Ok(output_ok)
                })())
            }
        },
    )
}
fn wire__crate__api__accounts__delete_account_key_package_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "delete_account_key_package",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_key_package_id = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::accounts::delete_account_key_package(
                            api_account_pubkey,
                            api_key_package_id,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__accounts__delete_account_key_packages_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "delete_account_key_packages",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::accounts::delete_account_key_packages(api_account_pubkey)
                                .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__accounts__delete_all_account_key_packages_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "delete_all_account_key_packages",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::accounts::delete_all_account_key_packages(
                            api_account_pubkey,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__delete_all_data_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "delete_all_data",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::delete_all_data().await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__groups__delete_chat_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "delete_chat",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_group_id = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::groups::delete_chat(api_account_pubkey, api_group_id)
                                .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__drafts__delete_draft_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "delete_draft",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_group_id = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::drafts::delete_draft(api_pubkey, api_group_id).await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__media_files__download_chat_media_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "download_chat_media",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_group_id = <String>::sse_decode(&mut deserializer);
            let api_original_file_hash = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::media_files::download_chat_media(
                            api_account_pubkey,
                            api_group_id,
                            api_original_file_hash,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__relays__ensure_all_subscriptions_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "ensure_all_subscriptions",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::relays::ensure_all_subscriptions().await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__utils__event_id_to_nevent_uri_impl(
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) -> flutter_rust_bridge::for_generated::WireSyncRust2DartSse {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_sync::<flutter_rust_bridge::for_generated::SseCodec, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "event_id_to_nevent_uri",
            port: None,
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Sync,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_event_id_hex = <String>::sse_decode(&mut deserializer);
            let api_pubkey_hex = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            transform_result_sse::<_, crate::api::error::ApiError>((move || {
                let output_ok =
                    crate::api::utils::event_id_to_nevent_uri(&api_event_id_hex, &api_pubkey_hex)?;
                Ok(output_ok)
            })())
        },
    )
}
fn wire__crate__api__accounts__export_account_nsec_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "export_account_nsec",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::accounts::export_account_nsec(api_pubkey).await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__messages__fetch_aggregated_messages_for_group_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "fetch_aggregated_messages_for_group",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_group_id = <String>::sse_decode(&mut deserializer);
            let api_before = <Option<chrono::DateTime<chrono::Utc>>>::sse_decode(&mut deserializer);
            let api_before_message_id = <Option<String>>::sse_decode(&mut deserializer);
            let api_limit = <Option<u32>>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::messages::fetch_aggregated_messages_for_group(
                            api_pubkey,
                            api_group_id,
                            api_before,
                            api_before_message_id,
                            api_limit,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__chat_list__fetch_archived_chat_list_snapshot_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "fetch_archived_chat_list_snapshot",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::chat_list::fetch_archived_chat_list_snapshot(
                            api_account_pubkey,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__chat_list__fetch_chat_list_snapshot_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "fetch_chat_list_snapshot",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::chat_list::fetch_chat_list_snapshot(api_account_pubkey)
                                .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__zapstore__fetch_latest_zapstore_version_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "fetch_latest_zapstore_version",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::zapstore::fetch_latest_zapstore_version().await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__messages__fetch_message_by_id_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "fetch_message_by_id",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_group_id = <String>::sse_decode(&mut deserializer);
            let api_message_id = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::messages::fetch_message_by_id(
                            api_pubkey,
                            api_group_id,
                            api_message_id,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__messages__fetch_messages_unread_with_minimum_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "fetch_messages_unread_with_minimum",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_group_id = <String>::sse_decode(&mut deserializer);
            let api_minimum = <Option<u32>>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::messages::fetch_messages_unread_with_minimum(
                            api_pubkey,
                            api_group_id,
                            api_minimum,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__accounts__follow_user_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "follow_user",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_user_to_follow_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::accounts::follow_user(
                            api_account_pubkey,
                            api_user_to_follow_pubkey,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__accounts__get_account_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "get_account",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::accounts::get_account(api_pubkey).await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__account_groups__get_account_group_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "get_account_group",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_mls_group_id = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::account_groups::get_account_group(
                            api_account_pubkey,
                            api_mls_group_id,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__accounts__get_accounts_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "get_accounts",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::accounts::get_accounts().await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__get_app_settings_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "get_app_settings",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::get_app_settings().await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__mute_list__get_blocked_users_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "get_blocked_users",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::mute_list::get_blocked_users(api_account_pubkey).await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__chat_list__get_chat_list_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "get_chat_list",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::chat_list::get_chat_list(api_account_pubkey).await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__chat_summary__get_chat_summary_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "get_chat_summary",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_mls_group_id = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::chat_summary::get_chat_summary(
                            api_account_pubkey,
                            api_mls_group_id,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__utils__get_default_blossom_server_url_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_normal::<flutter_rust_bridge::for_generated::SseCodec, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "get_default_blossom_server_url",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            deserializer.end();
            move |context| {
                transform_result_sse::<_, ()>((move || {
                    let output_ok =
                        Result::<_, ()>::Ok(crate::api::utils::get_default_blossom_server_url())?;
                    Ok(output_ok)
                })())
            }
        },
    )
}
fn wire__crate__api__account_groups__get_dm_group_with_peer_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "get_dm_group_with_peer",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_peer_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::account_groups::get_dm_group_with_peer(
                            api_account_pubkey,
                            api_peer_pubkey,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__groups__get_group_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "get_group",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_group_id = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::groups::get_group(api_account_pubkey, api_group_id).await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__groups__get_group_image_path_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "get_group_image_path",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_group_id = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::groups::get_group_image_path(
                            api_account_pubkey,
                            api_group_id,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__groups__get_group_information_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "get_group_information",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_group_id = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::groups::get_group_information(
                            api_account_pubkey,
                            api_group_id,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__notifications__get_group_push_debug_info_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "get_group_push_debug_info",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_group_id = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::notifications::get_group_push_debug_info(
                            api_pubkey,
                            api_group_id,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__groups__get_groups_informations_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "get_groups_informations",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_group_ids = <Vec<String>>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::groups::get_groups_informations(
                            api_account_pubkey,
                            api_group_ids,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__notifications__get_push_registration_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "get_push_registration",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::notifications::get_push_registration(api_pubkey).await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__groups__get_ratchet_tree_info_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "get_ratchet_tree_info",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_group_id = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::groups::get_ratchet_tree_info(
                            api_account_pubkey,
                            api_group_id,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__users__get_user_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "get_user",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_blocking_data_sync = <bool>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::users::get_user(api_pubkey, api_blocking_data_sync).await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__groups__group_admins_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "group_admins",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_group_id = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::groups::group_admins(api_pubkey, api_group_id).await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__groups__group_group_type_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "group_group_type",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_that = <crate::api::groups::Group>::sse_decode(&mut deserializer);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::groups::Group::group_type(&api_that, api_account_pubkey)
                                .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__utils__group_id_from_string_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_normal::<flutter_rust_bridge::for_generated::SseCodec, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "group_id_from_string",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_group_id = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| {
                transform_result_sse::<_, crate::api::error::ApiError>((move || {
                    let output_ok = crate::api::utils::group_id_from_string(&api_group_id)?;
                    Ok(output_ok)
                })())
            }
        },
    )
}
fn wire__crate__api__utils__group_id_to_string_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_normal::<flutter_rust_bridge::for_generated::SseCodec, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "group_id_to_string",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_group_id = <RustOpaqueMoi<
                flutter_rust_bridge::for_generated::RustAutoOpaqueInner<GroupId>,
            >>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| {
                transform_result_sse::<_, ()>((move || {
                    let mut api_group_id_guard = None;
                    let decode_indices_ =
                        flutter_rust_bridge::for_generated::lockable_compute_decode_order(vec![
                            flutter_rust_bridge::for_generated::LockableOrderInfo::new(
                                &api_group_id,
                                0,
                                false,
                            ),
                        ]);
                    for i in decode_indices_ {
                        match i {
                            0 => api_group_id_guard = Some(api_group_id.lockable_decode_sync_ref()),
                            _ => unreachable!(),
                        }
                    }
                    let api_group_id_guard = api_group_id_guard.unwrap();
                    let output_ok = Result::<_, ()>::Ok(crate::api::utils::group_id_to_string(
                        &*api_group_id_guard,
                    ))?;
                    Ok(output_ok)
                })())
            }
        },
    )
}
fn wire__crate__api__groups__group_is_direct_message_type_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "group_is_direct_message_type",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_that = <crate::api::groups::Group>::sse_decode(&mut deserializer);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::groups::Group::is_direct_message_type(
                            &api_that,
                            api_account_pubkey,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__groups__group_is_group_type_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "group_is_group_type",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_that = <crate::api::groups::Group>::sse_decode(&mut deserializer);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::groups::Group::is_group_type(&api_that, api_account_pubkey)
                                .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__groups__group_members_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "group_members",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_group_id = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::groups::group_members(api_pubkey, api_group_id).await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__groups__group_required_proposals_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "group_required_proposals",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_group_id = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::groups::group_required_proposals(
                            api_account_pubkey,
                            api_group_id,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__groups__group_update_group_data_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "group_update_group_data",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_that = <crate::api::groups::Group>::sse_decode(&mut deserializer);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_group_data =
                <crate::api::groups::FlutterGroupDataUpdate>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::groups::Group::update_group_data(
                            &api_that,
                            api_account_pubkey,
                            api_group_data,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__utils__hex_pubkey_from_npub_impl(
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) -> flutter_rust_bridge::for_generated::WireSyncRust2DartSse {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_sync::<flutter_rust_bridge::for_generated::SseCodec, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "hex_pubkey_from_npub",
            port: None,
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Sync,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_npub = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            transform_result_sse::<_, crate::api::error::ApiError>((move || {
                let output_ok = crate::api::utils::hex_pubkey_from_npub(&api_npub)?;
                Ok(output_ok)
            })())
        },
    )
}
fn wire__crate__api__initialize_whitenoise_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "initialize_whitenoise",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_config = <crate::api::WhitenoiseConfig>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::initialize_whitenoise(api_config).await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__accounts__is_following_user_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "is_following_user",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_user_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::accounts::is_following_user(
                            api_account_pubkey,
                            api_user_pubkey,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__mute_list__is_user_blocked_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "is_user_blocked",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_target_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::mute_list::is_user_blocked(
                            api_account_pubkey,
                            api_target_pubkey,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__utils__language_chinese_simplified_impl(
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) -> flutter_rust_bridge::for_generated::WireSyncRust2DartSse {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_sync::<flutter_rust_bridge::for_generated::SseCodec, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "language_chinese_simplified",
            port: None,
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Sync,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            deserializer.end();
            transform_result_sse::<_, ()>((move || {
                let output_ok =
                    Result::<_, ()>::Ok(crate::api::utils::language_chinese_simplified())?;
                Ok(output_ok)
            })())
        },
    )
}
fn wire__crate__api__utils__language_chinese_traditional_impl(
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) -> flutter_rust_bridge::for_generated::WireSyncRust2DartSse {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_sync::<flutter_rust_bridge::for_generated::SseCodec, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "language_chinese_traditional",
            port: None,
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Sync,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            deserializer.end();
            transform_result_sse::<_, ()>((move || {
                let output_ok =
                    Result::<_, ()>::Ok(crate::api::utils::language_chinese_traditional())?;
                Ok(output_ok)
            })())
        },
    )
}
fn wire__crate__api__utils__language_english_impl(
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) -> flutter_rust_bridge::for_generated::WireSyncRust2DartSse {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_sync::<flutter_rust_bridge::for_generated::SseCodec, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "language_english",
            port: None,
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Sync,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            deserializer.end();
            transform_result_sse::<_, ()>((move || {
                let output_ok = Result::<_, ()>::Ok(crate::api::utils::language_english())?;
                Ok(output_ok)
            })())
        },
    )
}
fn wire__crate__api__utils__language_french_impl(
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) -> flutter_rust_bridge::for_generated::WireSyncRust2DartSse {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_sync::<flutter_rust_bridge::for_generated::SseCodec, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "language_french",
            port: None,
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Sync,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            deserializer.end();
            transform_result_sse::<_, ()>((move || {
                let output_ok = Result::<_, ()>::Ok(crate::api::utils::language_french())?;
                Ok(output_ok)
            })())
        },
    )
}
fn wire__crate__api__utils__language_german_impl(
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) -> flutter_rust_bridge::for_generated::WireSyncRust2DartSse {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_sync::<flutter_rust_bridge::for_generated::SseCodec, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "language_german",
            port: None,
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Sync,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            deserializer.end();
            transform_result_sse::<_, ()>((move || {
                let output_ok = Result::<_, ()>::Ok(crate::api::utils::language_german())?;
                Ok(output_ok)
            })())
        },
    )
}
fn wire__crate__api__utils__language_italian_impl(
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) -> flutter_rust_bridge::for_generated::WireSyncRust2DartSse {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_sync::<flutter_rust_bridge::for_generated::SseCodec, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "language_italian",
            port: None,
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Sync,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            deserializer.end();
            transform_result_sse::<_, ()>((move || {
                let output_ok = Result::<_, ()>::Ok(crate::api::utils::language_italian())?;
                Ok(output_ok)
            })())
        },
    )
}
fn wire__crate__api__utils__language_portuguese_impl(
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) -> flutter_rust_bridge::for_generated::WireSyncRust2DartSse {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_sync::<flutter_rust_bridge::for_generated::SseCodec, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "language_portuguese",
            port: None,
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Sync,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            deserializer.end();
            transform_result_sse::<_, ()>((move || {
                let output_ok = Result::<_, ()>::Ok(crate::api::utils::language_portuguese())?;
                Ok(output_ok)
            })())
        },
    )
}
fn wire__crate__api__utils__language_russian_impl(
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) -> flutter_rust_bridge::for_generated::WireSyncRust2DartSse {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_sync::<flutter_rust_bridge::for_generated::SseCodec, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "language_russian",
            port: None,
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Sync,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            deserializer.end();
            transform_result_sse::<_, ()>((move || {
                let output_ok = Result::<_, ()>::Ok(crate::api::utils::language_russian())?;
                Ok(output_ok)
            })())
        },
    )
}
fn wire__crate__api__utils__language_spanish_impl(
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) -> flutter_rust_bridge::for_generated::WireSyncRust2DartSse {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_sync::<flutter_rust_bridge::for_generated::SseCodec, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "language_spanish",
            port: None,
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Sync,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            deserializer.end();
            transform_result_sse::<_, ()>((move || {
                let output_ok = Result::<_, ()>::Ok(crate::api::utils::language_spanish())?;
                Ok(output_ok)
            })())
        },
    )
}
fn wire__crate__api__utils__language_system_impl(
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) -> flutter_rust_bridge::for_generated::WireSyncRust2DartSse {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_sync::<flutter_rust_bridge::for_generated::SseCodec, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "language_system",
            port: None,
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Sync,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            deserializer.end();
            transform_result_sse::<_, ()>((move || {
                let output_ok = Result::<_, ()>::Ok(crate::api::utils::language_system())?;
                Ok(output_ok)
            })())
        },
    )
}
fn wire__crate__api__utils__language_to_string_impl(
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) -> flutter_rust_bridge::for_generated::WireSyncRust2DartSse {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_sync::<flutter_rust_bridge::for_generated::SseCodec, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "language_to_string",
            port: None,
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Sync,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_language = <RustOpaqueMoi<
                flutter_rust_bridge::for_generated::RustAutoOpaqueInner<Language>,
            >>::sse_decode(&mut deserializer);
            deserializer.end();
            transform_result_sse::<_, ()>((move || {
                let mut api_language_guard = None;
                let decode_indices_ =
                    flutter_rust_bridge::for_generated::lockable_compute_decode_order(vec![
                        flutter_rust_bridge::for_generated::LockableOrderInfo::new(
                            &api_language,
                            0,
                            false,
                        ),
                    ]);
                for i in decode_indices_ {
                    match i {
                        0 => api_language_guard = Some(api_language.lockable_decode_sync_ref()),
                        _ => unreachable!(),
                    }
                }
                let api_language_guard = api_language_guard.unwrap();
                let output_ok = Result::<_, ()>::Ok(crate::api::utils::language_to_string(
                    &*api_language_guard,
                ))?;
                Ok(output_ok)
            })())
        },
    )
}
fn wire__crate__api__utils__language_turkish_impl(
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) -> flutter_rust_bridge::for_generated::WireSyncRust2DartSse {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_sync::<flutter_rust_bridge::for_generated::SseCodec, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "language_turkish",
            port: None,
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Sync,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            deserializer.end();
            transform_result_sse::<_, ()>((move || {
                let output_ok = Result::<_, ()>::Ok(crate::api::utils::language_turkish())?;
                Ok(output_ok)
            })())
        },
    )
}
fn wire__crate__api__groups__leave_and_delete_group_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "leave_and_delete_group",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_group_id = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::groups::leave_and_delete_group(
                            api_account_pubkey,
                            api_group_id,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__groups__leave_group_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "leave_group",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_group_id = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::groups::leave_group(api_pubkey, api_group_id).await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__drafts__load_draft_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "load_draft",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_group_id = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::drafts::load_draft(api_pubkey, api_group_id).await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__accounts__login_cancel_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "login_cancel",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::accounts::login_cancel(api_pubkey).await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__signer__login_external_signer_publish_default_relays_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "login_external_signer_publish_default_relays",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::signer::login_external_signer_publish_default_relays(
                                api_pubkey,
                            )
                            .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__signer__login_external_signer_start_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "login_external_signer_start",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_sign_event = decode_DartFn_Inputs_String_Output_String_AnyhowException(
                <flutter_rust_bridge::DartOpaque>::sse_decode(&mut deserializer),
            );
            let api_nip04_encrypt =
                decode_DartFn_Inputs_String_String_Output_String_AnyhowException(
                    <flutter_rust_bridge::DartOpaque>::sse_decode(&mut deserializer),
                );
            let api_nip04_decrypt =
                decode_DartFn_Inputs_String_String_Output_String_AnyhowException(
                    <flutter_rust_bridge::DartOpaque>::sse_decode(&mut deserializer),
                );
            let api_nip44_encrypt =
                decode_DartFn_Inputs_String_String_Output_String_AnyhowException(
                    <flutter_rust_bridge::DartOpaque>::sse_decode(&mut deserializer),
                );
            let api_nip44_decrypt =
                decode_DartFn_Inputs_String_String_Output_String_AnyhowException(
                    <flutter_rust_bridge::DartOpaque>::sse_decode(&mut deserializer),
                );
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::signer::login_external_signer_start(
                            api_pubkey,
                            api_sign_event,
                            api_nip04_encrypt,
                            api_nip04_decrypt,
                            api_nip44_encrypt,
                            api_nip44_decrypt,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__signer__login_external_signer_with_custom_relay_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "login_external_signer_with_custom_relay",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_relay_url = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::signer::login_external_signer_with_custom_relay(
                                api_pubkey,
                                api_relay_url,
                            )
                            .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__accounts__login_publish_default_relays_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "login_publish_default_relays",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::accounts::login_publish_default_relays(api_pubkey).await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__accounts__login_start_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "login_start",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_nsec_or_hex_privkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::accounts::login_start(api_nsec_or_hex_privkey).await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__accounts__login_with_custom_relay_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "login_with_custom_relay",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_relay_url = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::accounts::login_with_custom_relay(
                            api_pubkey,
                            api_relay_url,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__accounts__logout_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "logout",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::accounts::logout(api_pubkey).await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__account_groups__mark_message_read_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "mark_message_read",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_message_id = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::account_groups::mark_message_read(
                            api_account_pubkey,
                            api_message_id,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__chat_list__mute_chat_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "mute_chat",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_mls_group_id = <String>::sse_decode(&mut deserializer);
            let api_duration =
                <crate::api::chat_list::ChatMuteDuration>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::chat_list::mute_chat(
                            api_account_pubkey,
                            api_mls_group_id,
                            api_duration,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__utils__npub_from_hex_pubkey_impl(
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) -> flutter_rust_bridge::for_generated::WireSyncRust2DartSse {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_sync::<flutter_rust_bridge::for_generated::SseCodec, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "npub_from_hex_pubkey",
            port: None,
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Sync,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_hex_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            transform_result_sse::<_, crate::api::error::ApiError>((move || {
                let output_ok = crate::api::utils::npub_from_hex_pubkey(&api_hex_pubkey)?;
                Ok(output_ok)
            })())
        },
    )
}
fn wire__crate__api__accounts__publish_account_key_package_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "publish_account_key_package",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::accounts::publish_account_key_package(api_account_pubkey)
                                .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__signer__register_external_signer_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "register_external_signer",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_sign_event = decode_DartFn_Inputs_String_Output_String_AnyhowException(
                <flutter_rust_bridge::DartOpaque>::sse_decode(&mut deserializer),
            );
            let api_nip04_encrypt =
                decode_DartFn_Inputs_String_String_Output_String_AnyhowException(
                    <flutter_rust_bridge::DartOpaque>::sse_decode(&mut deserializer),
                );
            let api_nip04_decrypt =
                decode_DartFn_Inputs_String_String_Output_String_AnyhowException(
                    <flutter_rust_bridge::DartOpaque>::sse_decode(&mut deserializer),
                );
            let api_nip44_encrypt =
                decode_DartFn_Inputs_String_String_Output_String_AnyhowException(
                    <flutter_rust_bridge::DartOpaque>::sse_decode(&mut deserializer),
                );
            let api_nip44_decrypt =
                decode_DartFn_Inputs_String_String_Output_String_AnyhowException(
                    <flutter_rust_bridge::DartOpaque>::sse_decode(&mut deserializer),
                );
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::signer::register_external_signer(
                            api_pubkey,
                            api_sign_event,
                            api_nip04_encrypt,
                            api_nip04_decrypt,
                            api_nip44_encrypt,
                            api_nip44_decrypt,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__reinitialize_whitenoise_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "reinitialize_whitenoise",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::reinitialize_whitenoise().await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__relays__relay_type_inbox_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_normal::<flutter_rust_bridge::for_generated::SseCodec, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "relay_type_inbox",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            deserializer.end();
            move |context| {
                transform_result_sse::<_, ()>((move || {
                    let output_ok = Result::<_, ()>::Ok(crate::api::relays::relay_type_inbox())?;
                    Ok(output_ok)
                })())
            }
        },
    )
}
fn wire__crate__api__relays__relay_type_key_package_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_normal::<flutter_rust_bridge::for_generated::SseCodec, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "relay_type_key_package",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            deserializer.end();
            move |context| {
                transform_result_sse::<_, ()>((move || {
                    let output_ok =
                        Result::<_, ()>::Ok(crate::api::relays::relay_type_key_package())?;
                    Ok(output_ok)
                })())
            }
        },
    )
}
fn wire__crate__api__relays__relay_type_nip65_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_normal::<flutter_rust_bridge::for_generated::SseCodec, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "relay_type_nip65",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            deserializer.end();
            move |context| {
                transform_result_sse::<_, ()>((move || {
                    let output_ok = Result::<_, ()>::Ok(crate::api::relays::relay_type_nip65())?;
                    Ok(output_ok)
                })())
            }
        },
    )
}
fn wire__crate__api__utils__relay_url_from_string_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_normal::<flutter_rust_bridge::for_generated::SseCodec, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "relay_url_from_string",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_url = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| {
                transform_result_sse::<_, crate::api::error::ApiError>((move || {
                    let output_ok = crate::api::utils::relay_url_from_string(api_url)?;
                    Ok(output_ok)
                })())
            }
        },
    )
}
fn wire__crate__api__accounts__remove_account_relay_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "remove_account_relay",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_url = <String>::sse_decode(&mut deserializer);
            let api_relay_type = <RelayType>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::accounts::remove_account_relay(
                            api_pubkey,
                            api_url,
                            api_relay_type,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__groups__remove_members_from_group_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "remove_members_from_group",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_group_id = <String>::sse_decode(&mut deserializer);
            let api_member_pubkeys = <Vec<String>>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::groups::remove_members_from_group(
                            api_pubkey,
                            api_group_id,
                            api_member_pubkeys,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__accounts__restore_default_relays_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "restore_default_relays",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::accounts::restore_default_relays(api_pubkey).await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__lifecycle__resume_after_background_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "resume_after_background",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::lifecycle::resume_after_background().await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__messages__retry_message_publish_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "retry_message_publish",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_group_id = <String>::sse_decode(&mut deserializer);
            let api_event_id = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::messages::retry_message_publish(
                            api_pubkey,
                            api_group_id,
                            api_event_id,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__drafts__save_draft_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "save_draft",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_group_id = <String>::sse_decode(&mut deserializer);
            let api_content = <String>::sse_decode(&mut deserializer);
            let api_reply_to_id = <Option<String>>::sse_decode(&mut deserializer);
            let api_media_attachments =
                <Vec<crate::api::media_files::MediaFile>>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::drafts::save_draft(
                            api_pubkey,
                            api_group_id,
                            api_content,
                            api_reply_to_id,
                            api_media_attachments,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__messages__search_messages_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "search_messages",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_query = <String>::sse_decode(&mut deserializer);
            let api_limit = <Option<u32>>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::messages::search_messages(api_pubkey, api_query, api_limit)
                                .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__messages__search_messages_in_group_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "search_messages_in_group",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_group_id = <String>::sse_decode(&mut deserializer);
            let api_query = <String>::sse_decode(&mut deserializer);
            let api_limit = <Option<u32>>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::messages::search_messages_in_group(
                            api_pubkey,
                            api_group_id,
                            api_query,
                            api_limit,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__user_search__search_users_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "search_users",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_query = <String>::sse_decode(&mut deserializer);
            let api_radius_start = <u8>::sse_decode(&mut deserializer);
            let api_radius_end = <u8>::sse_decode(&mut deserializer);
            let api_sink = <StreamSink<
                crate::api::user_search::UserSearchUpdate,
                flutter_rust_bridge::for_generated::SseCodec,
            >>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::user_search::search_users(
                            api_account_pubkey,
                            api_query,
                            api_radius_start,
                            api_radius_end,
                            api_sink,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__groups__self_demote_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "self_demote",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_group_id = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::groups::self_demote(api_pubkey, api_group_id).await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__bug_report__send_bug_report_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "send_bug_report",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_what_went_wrong = <String>::sse_decode(&mut deserializer);
            let api_expected_behavior = <Option<String>>::sse_decode(&mut deserializer);
            let api_steps_to_reproduce = <Option<String>>::sse_decode(&mut deserializer);
            let api_frequency = <Option<String>>::sse_decode(&mut deserializer);
            let api_npub = <Option<String>>::sse_decode(&mut deserializer);
            let api_logs = <Option<String>>::sse_decode(&mut deserializer);
            let api_app_version = <String>::sse_decode(&mut deserializer);
            let api_platform = <String>::sse_decode(&mut deserializer);
            let api_os_version = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::bug_report::send_bug_report(
                            api_what_went_wrong,
                            api_expected_behavior,
                            api_steps_to_reproduce,
                            api_frequency,
                            api_npub,
                            api_logs,
                            api_app_version,
                            api_platform,
                            api_os_version,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__messages__send_message_to_group_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "send_message_to_group",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_group_id = <String>::sse_decode(&mut deserializer);
            let api_message = <String>::sse_decode(&mut deserializer);
            let api_kind = <u16>::sse_decode(&mut deserializer);
            let api_tags = <Option<Vec<Tag>>>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::messages::send_message_to_group(
                            api_pubkey,
                            api_group_id,
                            api_message,
                            api_kind,
                            api_tags,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__chat_list__set_chat_pin_order_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "set_chat_pin_order",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_mls_group_id = <String>::sse_decode(&mut deserializer);
            let api_pin_order = <Option<i64>>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::chat_list::set_chat_pin_order(
                            api_account_pubkey,
                            api_mls_group_id,
                            api_pin_order,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__utils__string_from_relay_url_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_normal::<flutter_rust_bridge::for_generated::SseCodec, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "string_from_relay_url",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_relay_url = <RustOpaqueMoi<
                flutter_rust_bridge::for_generated::RustAutoOpaqueInner<RelayUrl>,
            >>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| {
                transform_result_sse::<_, ()>((move || {
                    let mut api_relay_url_guard = None;
                    let decode_indices_ =
                        flutter_rust_bridge::for_generated::lockable_compute_decode_order(vec![
                            flutter_rust_bridge::for_generated::LockableOrderInfo::new(
                                &api_relay_url,
                                0,
                                false,
                            ),
                        ]);
                    for i in decode_indices_ {
                        match i {
                            0 => {
                                api_relay_url_guard = Some(api_relay_url.lockable_decode_sync_ref())
                            }
                            _ => unreachable!(),
                        }
                    }
                    let api_relay_url_guard = api_relay_url_guard.unwrap();
                    let output_ok = Result::<_, ()>::Ok(crate::api::utils::string_from_relay_url(
                        &*api_relay_url_guard,
                    ))?;
                    Ok(output_ok)
                })())
            }
        },
    )
}
fn wire__crate__api__chat_list__subscribe_to_archived_chat_list_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "subscribe_to_archived_chat_list",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_sink = <StreamSink<
                crate::api::chat_list::ChatListStreamItem,
                flutter_rust_bridge::for_generated::SseCodec,
            >>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::chat_list::subscribe_to_archived_chat_list(
                            api_account_pubkey,
                            api_sink,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__chat_list__subscribe_to_chat_list_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "subscribe_to_chat_list",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_sink = <StreamSink<
                crate::api::chat_list::ChatListStreamItem,
                flutter_rust_bridge::for_generated::SseCodec,
            >>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::chat_list::subscribe_to_chat_list(
                            api_account_pubkey,
                            api_sink,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__messages__subscribe_to_group_messages_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "subscribe_to_group_messages",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <Option<String>>::sse_decode(&mut deserializer);
            let api_group_id = <String>::sse_decode(&mut deserializer);
            let api_sink = <StreamSink<
                crate::api::messages::MessageStreamItem,
                flutter_rust_bridge::for_generated::SseCodec,
            >>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::messages::subscribe_to_group_messages(
                            api_pubkey,
                            api_group_id,
                            api_sink,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__group_state__subscribe_to_group_state_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "subscribe_to_group_state",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_mls_group_id = <String>::sse_decode(&mut deserializer);
            let api_sink = <StreamSink<
                crate::api::group_state::GroupStateUpdate,
                flutter_rust_bridge::for_generated::SseCodec,
            >>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::group_state::subscribe_to_group_state(
                            api_account_pubkey,
                            api_mls_group_id,
                            api_sink,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__notifications__subscribe_to_notifications_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "subscribe_to_notifications",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_sink = <StreamSink<
                crate::api::notifications::NotificationUpdate,
                flutter_rust_bridge::for_generated::SseCodec,
            >>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::notifications::subscribe_to_notifications(api_sink).await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__logs__subscribe_to_rust_logs_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "subscribe_to_rust_logs",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_logs_base_dir = <String>::sse_decode(&mut deserializer);
            let api_sink =
                <StreamSink<String, flutter_rust_bridge::for_generated::SseCodec>>::sse_decode(
                    &mut deserializer,
                );
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::logs::subscribe_to_rust_logs(api_logs_base_dir, api_sink)
                                .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__users__subscribe_to_user_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "subscribe_to_user",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_sink = <StreamSink<
                crate::api::users::UserStreamItem,
                flutter_rust_bridge::for_generated::SseCodec,
            >>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::users::subscribe_to_user(api_pubkey, api_sink).await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__utils__tag_from_vec_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_normal::<flutter_rust_bridge::for_generated::SseCodec, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "tag_from_vec",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_vec = <Vec<String>>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| {
                transform_result_sse::<_, crate::api::error::ApiError>((move || {
                    let output_ok = crate::api::utils::tag_from_vec(api_vec)?;
                    Ok(output_ok)
                })())
            }
        },
    )
}
fn wire__crate__api__utils__theme_mode_dark_impl(
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) -> flutter_rust_bridge::for_generated::WireSyncRust2DartSse {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_sync::<flutter_rust_bridge::for_generated::SseCodec, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "theme_mode_dark",
            port: None,
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Sync,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            deserializer.end();
            transform_result_sse::<_, ()>((move || {
                let output_ok = Result::<_, ()>::Ok(crate::api::utils::theme_mode_dark())?;
                Ok(output_ok)
            })())
        },
    )
}
fn wire__crate__api__utils__theme_mode_light_impl(
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) -> flutter_rust_bridge::for_generated::WireSyncRust2DartSse {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_sync::<flutter_rust_bridge::for_generated::SseCodec, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "theme_mode_light",
            port: None,
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Sync,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            deserializer.end();
            transform_result_sse::<_, ()>((move || {
                let output_ok = Result::<_, ()>::Ok(crate::api::utils::theme_mode_light())?;
                Ok(output_ok)
            })())
        },
    )
}
fn wire__crate__api__utils__theme_mode_system_impl(
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) -> flutter_rust_bridge::for_generated::WireSyncRust2DartSse {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_sync::<flutter_rust_bridge::for_generated::SseCodec, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "theme_mode_system",
            port: None,
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Sync,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            deserializer.end();
            transform_result_sse::<_, ()>((move || {
                let output_ok = Result::<_, ()>::Ok(crate::api::utils::theme_mode_system())?;
                Ok(output_ok)
            })())
        },
    )
}
fn wire__crate__api__utils__theme_mode_to_string_impl(
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) -> flutter_rust_bridge::for_generated::WireSyncRust2DartSse {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_sync::<flutter_rust_bridge::for_generated::SseCodec, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "theme_mode_to_string",
            port: None,
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Sync,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_theme_mode = <RustOpaqueMoi<
                flutter_rust_bridge::for_generated::RustAutoOpaqueInner<ThemeMode>,
            >>::sse_decode(&mut deserializer);
            deserializer.end();
            transform_result_sse::<_, ()>((move || {
                let mut api_theme_mode_guard = None;
                let decode_indices_ =
                    flutter_rust_bridge::for_generated::lockable_compute_decode_order(vec![
                        flutter_rust_bridge::for_generated::LockableOrderInfo::new(
                            &api_theme_mode,
                            0,
                            false,
                        ),
                    ]);
                for i in decode_indices_ {
                    match i {
                        0 => api_theme_mode_guard = Some(api_theme_mode.lockable_decode_sync_ref()),
                        _ => unreachable!(),
                    }
                }
                let api_theme_mode_guard = api_theme_mode_guard.unwrap();
                let output_ok = Result::<_, ()>::Ok(crate::api::utils::theme_mode_to_string(
                    &*api_theme_mode_guard,
                ))?;
                Ok(output_ok)
            })())
        },
    )
}
fn wire__crate__api__account_groups__unarchive_chat_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "unarchive_chat",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_mls_group_id = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::account_groups::unarchive_chat(
                            api_account_pubkey,
                            api_mls_group_id,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__mute_list__unblock_user_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "unblock_user",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_target_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::mute_list::unblock_user(
                            api_account_pubkey,
                            api_target_pubkey,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__accounts__unfollow_user_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "unfollow_user",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_user_to_unfollow_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::accounts::unfollow_user(
                            api_account_pubkey,
                            api_user_to_unfollow_pubkey,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__chat_list__unmute_chat_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "unmute_chat",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_mls_group_id = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::chat_list::unmute_chat(
                            api_account_pubkey,
                            api_mls_group_id,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__accounts__update_account_metadata_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "update_account_metadata",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_metadata =
                <crate::api::metadata::FlutterMetadata>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::accounts::update_account_metadata(
                            api_pubkey,
                            &api_metadata,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__update_language_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "update_language",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_language = <Language>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::update_language(api_language).await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__accounts__update_notifications_enabled_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "update_notifications_enabled",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_enabled = <bool>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::accounts::update_notifications_enabled(
                            api_pubkey,
                            api_enabled,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__update_theme_mode_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "update_theme_mode",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_theme_mode = <ThemeMode>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::update_theme_mode(api_theme_mode).await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__accounts__upload_account_profile_picture_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "upload_account_profile_picture",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_server_url = <String>::sse_decode(&mut deserializer);
            let api_file_path = <String>::sse_decode(&mut deserializer);
            let api_image_type = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::accounts::upload_account_profile_picture(
                            api_pubkey,
                            api_server_url,
                            api_file_path,
                            api_image_type,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__media_files__upload_chat_media_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "upload_chat_media",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_group_id = <String>::sse_decode(&mut deserializer);
            let api_file_path = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::media_files::upload_chat_media(
                            api_account_pubkey,
                            api_group_id,
                            api_file_path,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__groups__upload_group_image_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "upload_group_image",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            let api_group_id = <String>::sse_decode(&mut deserializer);
            let api_file_path = <String>::sse_decode(&mut deserializer);
            let api_server_url = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::groups::upload_group_image(
                            api_account_pubkey,
                            api_group_id,
                            api_file_path,
                            api_server_url,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__notifications__upsert_push_registration_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "upsert_push_registration",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_platform =
                <crate::api::notifications::PushPlatform>::sse_decode(&mut deserializer);
            let api_raw_token = <String>::sse_decode(&mut deserializer);
            let api_server_pubkey = <String>::sse_decode(&mut deserializer);
            let api_relay_hint = <Option<String>>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::notifications::upsert_push_registration(
                            api_pubkey,
                            api_platform,
                            api_raw_token,
                            api_server_pubkey,
                            api_relay_hint,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__users__user_has_key_package_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "user_has_key_package",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_blocking_data_sync = <bool>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::users::user_has_key_package(
                            api_pubkey,
                            api_blocking_data_sync,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__users__user_metadata_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "user_metadata",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_blocking_data_sync = <bool>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::users::user_metadata(api_pubkey, api_blocking_data_sync)
                                .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__users__user_relays_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "user_relays",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_pubkey = <String>::sse_decode(&mut deserializer);
            let api_relay_type = <RelayType>::sse_decode(&mut deserializer);
            let api_blocking_data_sync = <bool>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok = crate::api::users::user_relays(
                            api_pubkey,
                            api_relay_type,
                            api_blocking_data_sync,
                        )
                        .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}
fn wire__crate__api__groups__visible_groups_with_info_impl(
    port_: flutter_rust_bridge::for_generated::MessagePort,
    ptr_: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len_: i32,
    data_len_: i32,
) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap_async::<flutter_rust_bridge::for_generated::SseCodec, _, _, _>(
        flutter_rust_bridge::for_generated::TaskInfo {
            debug_name: "visible_groups_with_info",
            port: Some(port_),
            mode: flutter_rust_bridge::for_generated::FfiCallMode::Normal,
        },
        move || {
            let message = unsafe {
                flutter_rust_bridge::for_generated::Dart2RustMessageSse::from_wire(
                    ptr_,
                    rust_vec_len_,
                    data_len_,
                )
            };
            let mut deserializer =
                flutter_rust_bridge::for_generated::SseDeserializer::new(message);
            let api_account_pubkey = <String>::sse_decode(&mut deserializer);
            deserializer.end();
            move |context| async move {
                transform_result_sse::<_, crate::api::error::ApiError>(
                    (move || async move {
                        let output_ok =
                            crate::api::groups::visible_groups_with_info(api_account_pubkey)
                                .await?;
                        Ok(output_ok)
                    })()
                    .await,
                )
            }
        },
    )
}

// Section: related_funcs

fn decode_DartFn_Inputs_String_Output_String_AnyhowException(
    dart_opaque: flutter_rust_bridge::DartOpaque,
) -> impl Fn(String) -> flutter_rust_bridge::DartFnFuture<String> {
    use flutter_rust_bridge::IntoDart;

    async fn body(dart_opaque: flutter_rust_bridge::DartOpaque, arg0: String) -> String {
        let args = vec![arg0.into_into_dart().into_dart()];
        let message = FLUTTER_RUST_BRIDGE_HANDLER
            .dart_fn_invoke(dart_opaque, args)
            .await;

        let mut deserializer = flutter_rust_bridge::for_generated::SseDeserializer::new(message);
        let action = deserializer.cursor.read_u8().unwrap();
        let ans = match action {
            0 => std::result::Result::Ok(<String>::sse_decode(&mut deserializer)),
            1 => std::result::Result::Err(
                <flutter_rust_bridge::for_generated::anyhow::Error>::sse_decode(&mut deserializer),
            ),
            _ => unreachable!(),
        };
        deserializer.end();
        let ans = ans.expect("Dart throws exception but Rust side assume it is not failable");
        ans
    }

    move |arg0: String| {
        flutter_rust_bridge::for_generated::convert_into_dart_fn_future(body(
            dart_opaque.clone(),
            arg0,
        ))
    }
}
fn decode_DartFn_Inputs_String_String_Output_String_AnyhowException(
    dart_opaque: flutter_rust_bridge::DartOpaque,
) -> impl Fn(String, String) -> flutter_rust_bridge::DartFnFuture<String> {
    use flutter_rust_bridge::IntoDart;

    async fn body(
        dart_opaque: flutter_rust_bridge::DartOpaque,
        arg0: String,
        arg1: String,
    ) -> String {
        let args = vec![
            arg0.into_into_dart().into_dart(),
            arg1.into_into_dart().into_dart(),
        ];
        let message = FLUTTER_RUST_BRIDGE_HANDLER
            .dart_fn_invoke(dart_opaque, args)
            .await;

        let mut deserializer = flutter_rust_bridge::for_generated::SseDeserializer::new(message);
        let action = deserializer.cursor.read_u8().unwrap();
        let ans = match action {
            0 => std::result::Result::Ok(<String>::sse_decode(&mut deserializer)),
            1 => std::result::Result::Err(
                <flutter_rust_bridge::for_generated::anyhow::Error>::sse_decode(&mut deserializer),
            ),
            _ => unreachable!(),
        };
        deserializer.end();
        let ans = ans.expect("Dart throws exception but Rust side assume it is not failable");
        ans
    }

    move |arg0: String, arg1: String| {
        flutter_rust_bridge::for_generated::convert_into_dart_fn_future(body(
            dart_opaque.clone(),
            arg0,
            arg1,
        ))
    }
}
flutter_rust_bridge::frb_generated_moi_arc_impl_value!(
    flutter_rust_bridge::for_generated::RustAutoOpaqueInner<AppSettings>
);
flutter_rust_bridge::frb_generated_moi_arc_impl_value!(
    flutter_rust_bridge::for_generated::RustAutoOpaqueInner<DartSigner>
);
flutter_rust_bridge::frb_generated_moi_arc_impl_value!(
    flutter_rust_bridge::for_generated::RustAutoOpaqueInner<GroupId>
);
flutter_rust_bridge::frb_generated_moi_arc_impl_value!(
    flutter_rust_bridge::for_generated::RustAutoOpaqueInner<Language>
);
flutter_rust_bridge::frb_generated_moi_arc_impl_value!(
    flutter_rust_bridge::for_generated::RustAutoOpaqueInner<PublicKey>
);
flutter_rust_bridge::frb_generated_moi_arc_impl_value!(
    flutter_rust_bridge::for_generated::RustAutoOpaqueInner<RelayType>
);
flutter_rust_bridge::frb_generated_moi_arc_impl_value!(
    flutter_rust_bridge::for_generated::RustAutoOpaqueInner<RelayUrl>
);
flutter_rust_bridge::frb_generated_moi_arc_impl_value!(
    flutter_rust_bridge::for_generated::RustAutoOpaqueInner<Tag>
);
flutter_rust_bridge::frb_generated_moi_arc_impl_value!(
    flutter_rust_bridge::for_generated::RustAutoOpaqueInner<ThemeMode>
);

// Section: dart2rust

impl SseDecode for flutter_rust_bridge::for_generated::anyhow::Error {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <String>::sse_decode(deserializer);
        return flutter_rust_bridge::for_generated::anyhow::anyhow!("{}", inner);
    }
}

impl SseDecode for AppSettings {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <RustOpaqueMoi<
            flutter_rust_bridge::for_generated::RustAutoOpaqueInner<AppSettings>,
        >>::sse_decode(deserializer);
        return flutter_rust_bridge::for_generated::rust_auto_opaque_decode_owned(inner);
    }
}

impl SseDecode for DartSigner {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <RustOpaqueMoi<
            flutter_rust_bridge::for_generated::RustAutoOpaqueInner<DartSigner>,
        >>::sse_decode(deserializer);
        return flutter_rust_bridge::for_generated::rust_auto_opaque_decode_owned(inner);
    }
}

impl SseDecode for GroupId {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <RustOpaqueMoi<
            flutter_rust_bridge::for_generated::RustAutoOpaqueInner<GroupId>,
        >>::sse_decode(deserializer);
        return flutter_rust_bridge::for_generated::rust_auto_opaque_decode_owned(inner);
    }
}

impl SseDecode for Language {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <RustOpaqueMoi<
            flutter_rust_bridge::for_generated::RustAutoOpaqueInner<Language>,
        >>::sse_decode(deserializer);
        return flutter_rust_bridge::for_generated::rust_auto_opaque_decode_owned(inner);
    }
}

impl SseDecode for PublicKey {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <RustOpaqueMoi<
            flutter_rust_bridge::for_generated::RustAutoOpaqueInner<PublicKey>,
        >>::sse_decode(deserializer);
        return flutter_rust_bridge::for_generated::rust_auto_opaque_decode_owned(inner);
    }
}

impl SseDecode for RelayType {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <RustOpaqueMoi<
            flutter_rust_bridge::for_generated::RustAutoOpaqueInner<RelayType>,
        >>::sse_decode(deserializer);
        return flutter_rust_bridge::for_generated::rust_auto_opaque_decode_owned(inner);
    }
}

impl SseDecode for RelayUrl {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <RustOpaqueMoi<
            flutter_rust_bridge::for_generated::RustAutoOpaqueInner<RelayUrl>,
        >>::sse_decode(deserializer);
        return flutter_rust_bridge::for_generated::rust_auto_opaque_decode_owned(inner);
    }
}

impl SseDecode for Tag {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <RustOpaqueMoi<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<Tag>>>::sse_decode(deserializer);
        return flutter_rust_bridge::for_generated::rust_auto_opaque_decode_owned(inner);
    }
}

impl SseDecode for ThemeMode {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <RustOpaqueMoi<
            flutter_rust_bridge::for_generated::RustAutoOpaqueInner<ThemeMode>,
        >>::sse_decode(deserializer);
        return flutter_rust_bridge::for_generated::rust_auto_opaque_decode_owned(inner);
    }
}

impl SseDecode for chrono::DateTime<chrono::Utc> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <i64>::sse_decode(deserializer);
        return chrono::DateTime::<chrono::Utc>::from_naive_utc_and_offset(
            chrono::DateTime::from_timestamp_micros(inner)
                .expect("invalid or out-of-range datetime")
                .naive_utc(),
            chrono::Utc,
        );
    }
}

impl SseDecode for flutter_rust_bridge::DartOpaque {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <usize>::sse_decode(deserializer);
        return unsafe { flutter_rust_bridge::for_generated::sse_decode_dart_opaque(inner) };
    }
}

impl SseDecode for std::collections::HashMap<String, String> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <Vec<(String, String)>>::sse_decode(deserializer);
        return inner.into_iter().collect();
    }
}

impl SseDecode
    for RustOpaqueMoi<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<AppSettings>>
{
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <usize>::sse_decode(deserializer);
        return decode_rust_opaque_moi(inner);
    }
}

impl SseDecode
    for RustOpaqueMoi<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<DartSigner>>
{
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <usize>::sse_decode(deserializer);
        return decode_rust_opaque_moi(inner);
    }
}

impl SseDecode for RustOpaqueMoi<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<GroupId>> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <usize>::sse_decode(deserializer);
        return decode_rust_opaque_moi(inner);
    }
}

impl SseDecode
    for RustOpaqueMoi<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<Language>>
{
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <usize>::sse_decode(deserializer);
        return decode_rust_opaque_moi(inner);
    }
}

impl SseDecode
    for RustOpaqueMoi<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<PublicKey>>
{
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <usize>::sse_decode(deserializer);
        return decode_rust_opaque_moi(inner);
    }
}

impl SseDecode
    for RustOpaqueMoi<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<RelayType>>
{
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <usize>::sse_decode(deserializer);
        return decode_rust_opaque_moi(inner);
    }
}

impl SseDecode
    for RustOpaqueMoi<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<RelayUrl>>
{
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <usize>::sse_decode(deserializer);
        return decode_rust_opaque_moi(inner);
    }
}

impl SseDecode for RustOpaqueMoi<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<Tag>> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <usize>::sse_decode(deserializer);
        return decode_rust_opaque_moi(inner);
    }
}

impl SseDecode
    for RustOpaqueMoi<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<ThemeMode>>
{
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <usize>::sse_decode(deserializer);
        return decode_rust_opaque_moi(inner);
    }
}

impl SseDecode for StreamSink<String, flutter_rust_bridge::for_generated::SseCodec> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <String>::sse_decode(deserializer);
        return StreamSink::deserialize(inner);
    }
}

impl SseDecode
    for StreamSink<
        crate::api::chat_list::ChatListStreamItem,
        flutter_rust_bridge::for_generated::SseCodec,
    >
{
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <String>::sse_decode(deserializer);
        return StreamSink::deserialize(inner);
    }
}

impl SseDecode
    for StreamSink<
        crate::api::group_state::GroupStateUpdate,
        flutter_rust_bridge::for_generated::SseCodec,
    >
{
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <String>::sse_decode(deserializer);
        return StreamSink::deserialize(inner);
    }
}

impl SseDecode
    for StreamSink<
        crate::api::messages::MessageStreamItem,
        flutter_rust_bridge::for_generated::SseCodec,
    >
{
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <String>::sse_decode(deserializer);
        return StreamSink::deserialize(inner);
    }
}

impl SseDecode
    for StreamSink<
        crate::api::notifications::NotificationUpdate,
        flutter_rust_bridge::for_generated::SseCodec,
    >
{
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <String>::sse_decode(deserializer);
        return StreamSink::deserialize(inner);
    }
}

impl SseDecode
    for StreamSink<
        crate::api::user_search::UserSearchUpdate,
        flutter_rust_bridge::for_generated::SseCodec,
    >
{
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <String>::sse_decode(deserializer);
        return StreamSink::deserialize(inner);
    }
}

impl SseDecode
    for StreamSink<crate::api::users::UserStreamItem, flutter_rust_bridge::for_generated::SseCodec>
{
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <String>::sse_decode(deserializer);
        return StreamSink::deserialize(inner);
    }
}

impl SseDecode for String {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <Vec<u8>>::sse_decode(deserializer);
        return String::from_utf8(inner).unwrap();
    }
}

impl SseDecode for crate::api::accounts::Account {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_pubkey = <String>::sse_decode(deserializer);
        let mut var_accountType = <crate::api::accounts::AccountType>::sse_decode(deserializer);
        let mut var_lastSyncedAt =
            <Option<chrono::DateTime<chrono::Utc>>>::sse_decode(deserializer);
        let mut var_createdAt = <chrono::DateTime<chrono::Utc>>::sse_decode(deserializer);
        let mut var_updatedAt = <chrono::DateTime<chrono::Utc>>::sse_decode(deserializer);
        return crate::api::accounts::Account {
            pubkey: var_pubkey,
            account_type: var_accountType,
            last_synced_at: var_lastSyncedAt,
            created_at: var_createdAt,
            updated_at: var_updatedAt,
        };
    }
}

impl SseDecode for crate::api::account_groups::AccountGroup {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_id = <Option<i64>>::sse_decode(deserializer);
        let mut var_accountPubkey = <String>::sse_decode(deserializer);
        let mut var_mlsGroupId = <String>::sse_decode(deserializer);
        let mut var_userConfirmation = <Option<bool>>::sse_decode(deserializer);
        let mut var_welcomerPubkey = <Option<String>>::sse_decode(deserializer);
        let mut var_lastReadMessageId = <Option<String>>::sse_decode(deserializer);
        let mut var_pinOrder = <Option<i64>>::sse_decode(deserializer);
        let mut var_archivedAt = <Option<i64>>::sse_decode(deserializer);
        let mut var_createdAt = <i64>::sse_decode(deserializer);
        let mut var_updatedAt = <i64>::sse_decode(deserializer);
        return crate::api::account_groups::AccountGroup {
            id: var_id,
            account_pubkey: var_accountPubkey,
            mls_group_id: var_mlsGroupId,
            user_confirmation: var_userConfirmation,
            welcomer_pubkey: var_welcomerPubkey,
            last_read_message_id: var_lastReadMessageId,
            pin_order: var_pinOrder,
            archived_at: var_archivedAt,
            created_at: var_createdAt,
            updated_at: var_updatedAt,
        };
    }
}

impl SseDecode for crate::api::accounts::AccountSettings {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_notificationsEnabled = <bool>::sse_decode(deserializer);
        return crate::api::accounts::AccountSettings {
            notifications_enabled: var_notificationsEnabled,
        };
    }
}

impl SseDecode for crate::api::accounts::AccountType {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <i32>::sse_decode(deserializer);
        return match inner {
            0 => crate::api::accounts::AccountType::Local,
            1 => crate::api::accounts::AccountType::External,
            _ => unreachable!("Invalid variant for AccountType: {}", inner),
        };
    }
}

impl SseDecode for crate::api::error::ApiError {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut tag_ = <i32>::sse_decode(deserializer);
        match tag_ {
            0 => {
                let mut var_message = <String>::sse_decode(deserializer);
                return crate::api::error::ApiError::Whitenoise {
                    message: var_message,
                };
            }
            1 => {
                let mut var_message = <String>::sse_decode(deserializer);
                return crate::api::error::ApiError::DatabasePoolTimedOut {
                    message: var_message,
                };
            }
            2 => {
                let mut var_message = <String>::sse_decode(deserializer);
                return crate::api::error::ApiError::InvalidKey {
                    message: var_message,
                };
            }
            3 => {
                let mut var_message = <String>::sse_decode(deserializer);
                return crate::api::error::ApiError::NostrUrl {
                    message: var_message,
                };
            }
            4 => {
                let mut var_message = <String>::sse_decode(deserializer);
                return crate::api::error::ApiError::NostrTag {
                    message: var_message,
                };
            }
            5 => {
                let mut var_message = <String>::sse_decode(deserializer);
                return crate::api::error::ApiError::NostrEvent {
                    message: var_message,
                };
            }
            6 => {
                let mut var_message = <String>::sse_decode(deserializer);
                return crate::api::error::ApiError::NostrParse {
                    message: var_message,
                };
            }
            7 => {
                let mut var_message = <String>::sse_decode(deserializer);
                return crate::api::error::ApiError::NostrHex {
                    message: var_message,
                };
            }
            8 => {
                let mut var_message = <String>::sse_decode(deserializer);
                return crate::api::error::ApiError::LoginInvalidKeyFormat {
                    message: var_message,
                };
            }
            9 => {
                return crate::api::error::ApiError::LoginNoRelayConnections;
            }
            10 => {
                let mut var_message = <String>::sse_decode(deserializer);
                return crate::api::error::ApiError::LoginTimeout {
                    message: var_message,
                };
            }
            11 => {
                return crate::api::error::ApiError::LoginNoLoginInProgress;
            }
            12 => {
                let mut var_message = <String>::sse_decode(deserializer);
                return crate::api::error::ApiError::LoginInternal {
                    message: var_message,
                };
            }
            13 => {
                let mut var_message = <String>::sse_decode(deserializer);
                return crate::api::error::ApiError::LoginKeyringUnavailable {
                    message: var_message,
                };
            }
            14 => {
                let mut var_message = <String>::sse_decode(deserializer);
                return crate::api::error::ApiError::Other {
                    message: var_message,
                };
            }
            _ => {
                unimplemented!("");
            }
        }
    }
}

impl SseDecode for bool {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        deserializer.cursor.read_u8().unwrap() != 0
    }
}

impl SseDecode for crate::api::chat_list::ChatListStreamItem {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut tag_ = <i32>::sse_decode(deserializer);
        match tag_ {
            0 => {
                let mut var_items =
                    <Vec<crate::api::chat_summary::ChatSummary>>::sse_decode(deserializer);
                return crate::api::chat_list::ChatListStreamItem::InitialSnapshot {
                    items: var_items,
                };
            }
            1 => {
                let mut var_update =
                    <crate::api::chat_list::ChatListUpdate>::sse_decode(deserializer);
                return crate::api::chat_list::ChatListStreamItem::Update { update: var_update };
            }
            _ => {
                unimplemented!("");
            }
        }
    }
}

impl SseDecode for crate::api::chat_list::ChatListUpdate {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_trigger =
            <crate::api::chat_list::ChatListUpdateTrigger>::sse_decode(deserializer);
        let mut var_item = <crate::api::chat_summary::ChatSummary>::sse_decode(deserializer);
        return crate::api::chat_list::ChatListUpdate {
            trigger: var_trigger,
            item: var_item,
        };
    }
}

impl SseDecode for crate::api::chat_list::ChatListUpdateTrigger {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <i32>::sse_decode(deserializer);
        return match inner {
            0 => crate::api::chat_list::ChatListUpdateTrigger::NewGroup,
            1 => crate::api::chat_list::ChatListUpdateTrigger::NewLastMessage,
            2 => crate::api::chat_list::ChatListUpdateTrigger::LastMessageDeleted,
            3 => crate::api::chat_list::ChatListUpdateTrigger::ChatArchiveChanged,
            4 => crate::api::chat_list::ChatListUpdateTrigger::RemovedFromGroup,
            5 => crate::api::chat_list::ChatListUpdateTrigger::ChatMuteChanged,
            6 => crate::api::chat_list::ChatListUpdateTrigger::LeftGroup,
            7 => crate::api::chat_list::ChatListUpdateTrigger::ChatCleared,
            8 => crate::api::chat_list::ChatListUpdateTrigger::ChatDeleted,
            9 => crate::api::chat_list::ChatListUpdateTrigger::UserBlockChanged,
            10 => crate::api::chat_list::ChatListUpdateTrigger::SnapshotRefresh,
            _ => unreachable!("Invalid variant for ChatListUpdateTrigger: {}", inner),
        };
    }
}

impl SseDecode for crate::api::messages::ChatMessage {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_id = <String>::sse_decode(deserializer);
        let mut var_pubkey = <String>::sse_decode(deserializer);
        let mut var_content = <String>::sse_decode(deserializer);
        let mut var_createdAt = <chrono::DateTime<chrono::Utc>>::sse_decode(deserializer);
        let mut var_tags = <Vec<Vec<String>>>::sse_decode(deserializer);
        let mut var_isReply = <bool>::sse_decode(deserializer);
        let mut var_replyToId = <Option<String>>::sse_decode(deserializer);
        let mut var_isDeleted = <bool>::sse_decode(deserializer);
        let mut var_contentTokens =
            <crate::api::markdown::MarkdownDocument>::sse_decode(deserializer);
        let mut var_reactions = <crate::api::messages::ReactionSummary>::sse_decode(deserializer);
        let mut var_mediaAttachments =
            <Vec<crate::api::media_files::MediaFile>>::sse_decode(deserializer);
        let mut var_kind = <u16>::sse_decode(deserializer);
        let mut var_deliveryStatus =
            <Option<crate::api::messages::DeliveryStatus>>::sse_decode(deserializer);
        return crate::api::messages::ChatMessage {
            id: var_id,
            pubkey: var_pubkey,
            content: var_content,
            created_at: var_createdAt,
            tags: var_tags,
            is_reply: var_isReply,
            reply_to_id: var_replyToId,
            is_deleted: var_isDeleted,
            content_tokens: var_contentTokens,
            reactions: var_reactions,
            media_attachments: var_mediaAttachments,
            kind: var_kind,
            delivery_status: var_deliveryStatus,
        };
    }
}

impl SseDecode for crate::api::messages::ChatMessageSummary {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_mlsGroupId = <String>::sse_decode(deserializer);
        let mut var_author = <String>::sse_decode(deserializer);
        let mut var_authorDisplayName = <Option<String>>::sse_decode(deserializer);
        let mut var_content = <String>::sse_decode(deserializer);
        let mut var_createdAt = <chrono::DateTime<chrono::Utc>>::sse_decode(deserializer);
        let mut var_mediaAttachmentCount = <u64>::sse_decode(deserializer);
        return crate::api::messages::ChatMessageSummary {
            mls_group_id: var_mlsGroupId,
            author: var_author,
            author_display_name: var_authorDisplayName,
            content: var_content,
            created_at: var_createdAt,
            media_attachment_count: var_mediaAttachmentCount,
        };
    }
}

impl SseDecode for crate::api::chat_list::ChatMuteDuration {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut tag_ = <i32>::sse_decode(deserializer);
        match tag_ {
            0 => {
                return crate::api::chat_list::ChatMuteDuration::OneHour;
            }
            1 => {
                return crate::api::chat_list::ChatMuteDuration::EightHours;
            }
            2 => {
                return crate::api::chat_list::ChatMuteDuration::OneDay;
            }
            3 => {
                return crate::api::chat_list::ChatMuteDuration::OneWeek;
            }
            4 => {
                return crate::api::chat_list::ChatMuteDuration::Forever;
            }
            5 => {
                let mut var_until = <chrono::DateTime<chrono::Utc>>::sse_decode(deserializer);
                return crate::api::chat_list::ChatMuteDuration::Custom { until: var_until };
            }
            _ => {
                unimplemented!("");
            }
        }
    }
}

impl SseDecode for crate::api::chat_summary::ChatSummary {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_mlsGroupId = <String>::sse_decode(deserializer);
        let mut var_name = <Option<String>>::sse_decode(deserializer);
        let mut var_groupType = <crate::api::groups::GroupType>::sse_decode(deserializer);
        let mut var_createdAt = <chrono::DateTime<chrono::Utc>>::sse_decode(deserializer);
        let mut var_groupImagePath = <Option<String>>::sse_decode(deserializer);
        let mut var_groupImageUrl = <Option<String>>::sse_decode(deserializer);
        let mut var_lastMessage =
            <Option<crate::api::messages::ChatMessageSummary>>::sse_decode(deserializer);
        let mut var_pendingConfirmation = <bool>::sse_decode(deserializer);
        let mut var_welcomerPubkey = <Option<String>>::sse_decode(deserializer);
        let mut var_archivedAt = <Option<chrono::DateTime<chrono::Utc>>>::sse_decode(deserializer);
        let mut var_removedAt = <Option<chrono::DateTime<chrono::Utc>>>::sse_decode(deserializer);
        let mut var_selfRemoved = <bool>::sse_decode(deserializer);
        let mut var_unreadCount = <u64>::sse_decode(deserializer);
        let mut var_pinOrder = <Option<i64>>::sse_decode(deserializer);
        let mut var_dmPeerPubkey = <Option<String>>::sse_decode(deserializer);
        let mut var_mutedUntil = <Option<chrono::DateTime<chrono::Utc>>>::sse_decode(deserializer);
        return crate::api::chat_summary::ChatSummary {
            mls_group_id: var_mlsGroupId,
            name: var_name,
            group_type: var_groupType,
            created_at: var_createdAt,
            group_image_path: var_groupImagePath,
            group_image_url: var_groupImageUrl,
            last_message: var_lastMessage,
            pending_confirmation: var_pendingConfirmation,
            welcomer_pubkey: var_welcomerPubkey,
            archived_at: var_archivedAt,
            removed_at: var_removedAt,
            self_removed: var_selfRemoved,
            unread_count: var_unreadCount,
            pin_order: var_pinOrder,
            dm_peer_pubkey: var_dmPeerPubkey,
            muted_until: var_mutedUntil,
        };
    }
}

impl SseDecode for crate::api::messages::DeliveryStatus {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut tag_ = <i32>::sse_decode(deserializer);
        match tag_ {
            0 => {
                return crate::api::messages::DeliveryStatus::Sending;
            }
            1 => {
                let mut var_relayCount = <u64>::sse_decode(deserializer);
                return crate::api::messages::DeliveryStatus::Sent {
                    relay_count: var_relayCount,
                };
            }
            2 => {
                let mut var_reason = <String>::sse_decode(deserializer);
                return crate::api::messages::DeliveryStatus::Failed { reason: var_reason };
            }
            3 => {
                return crate::api::messages::DeliveryStatus::Retried;
            }
            _ => {
                unimplemented!("");
            }
        }
    }
}

impl SseDecode for crate::api::drafts::Draft {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_accountPubkey = <String>::sse_decode(deserializer);
        let mut var_mlsGroupId = <String>::sse_decode(deserializer);
        let mut var_content = <String>::sse_decode(deserializer);
        let mut var_replyToId = <Option<String>>::sse_decode(deserializer);
        let mut var_mediaAttachments =
            <Vec<crate::api::media_files::MediaFile>>::sse_decode(deserializer);
        let mut var_createdAt = <chrono::DateTime<chrono::Utc>>::sse_decode(deserializer);
        let mut var_updatedAt = <chrono::DateTime<chrono::Utc>>::sse_decode(deserializer);
        return crate::api::drafts::Draft {
            account_pubkey: var_accountPubkey,
            mls_group_id: var_mlsGroupId,
            content: var_content,
            reply_to_id: var_replyToId,
            media_attachments: var_mediaAttachments,
            created_at: var_createdAt,
            updated_at: var_updatedAt,
        };
    }
}

impl SseDecode for crate::api::messages::EmojiReaction {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_emoji = <String>::sse_decode(deserializer);
        let mut var_count = <u64>::sse_decode(deserializer);
        let mut var_users = <Vec<String>>::sse_decode(deserializer);
        return crate::api::messages::EmojiReaction {
            emoji: var_emoji,
            count: var_count,
            users: var_users,
        };
    }
}

impl SseDecode for crate::api::media_files::FileMetadata {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_originalFilename = <Option<String>>::sse_decode(deserializer);
        let mut var_dimensions = <Option<String>>::sse_decode(deserializer);
        let mut var_blurhash = <Option<String>>::sse_decode(deserializer);
        let mut var_thumbhash = <Option<String>>::sse_decode(deserializer);
        let mut var_durationMs = <Option<u64>>::sse_decode(deserializer);
        let mut var_waveform = <Option<Vec<u8>>>::sse_decode(deserializer);
        return crate::api::media_files::FileMetadata {
            original_filename: var_originalFilename,
            dimensions: var_dimensions,
            blurhash: var_blurhash,
            thumbhash: var_thumbhash,
            duration_ms: var_durationMs,
            waveform: var_waveform,
        };
    }
}

impl SseDecode for crate::api::accounts::FlutterEvent {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_id = <String>::sse_decode(deserializer);
        let mut var_pubkey = <String>::sse_decode(deserializer);
        let mut var_createdAt = <chrono::DateTime<chrono::Utc>>::sse_decode(deserializer);
        let mut var_kind = <u16>::sse_decode(deserializer);
        let mut var_tags = <Vec<Vec<String>>>::sse_decode(deserializer);
        let mut var_content = <String>::sse_decode(deserializer);
        return crate::api::accounts::FlutterEvent {
            id: var_id,
            pubkey: var_pubkey,
            created_at: var_createdAt,
            kind: var_kind,
            tags: var_tags,
            content: var_content,
        };
    }
}

impl SseDecode for crate::api::groups::FlutterGroupDataUpdate {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_name = <Option<String>>::sse_decode(deserializer);
        let mut var_description = <Option<String>>::sse_decode(deserializer);
        let mut var_relays = <Option<Vec<String>>>::sse_decode(deserializer);
        let mut var_admins = <Option<Vec<String>>>::sse_decode(deserializer);
        let mut var_imageKey = <Option<[u8; 32]>>::sse_decode(deserializer);
        let mut var_imageHash = <Option<[u8; 32]>>::sse_decode(deserializer);
        let mut var_imageNonce = <Option<[u8; 12]>>::sse_decode(deserializer);
        return crate::api::groups::FlutterGroupDataUpdate {
            name: var_name,
            description: var_description,
            relays: var_relays,
            admins: var_admins,
            image_key: var_imageKey,
            image_hash: var_imageHash,
            image_nonce: var_imageNonce,
        };
    }
}

impl SseDecode for crate::api::metadata::FlutterMetadata {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_name = <Option<String>>::sse_decode(deserializer);
        let mut var_displayName = <Option<String>>::sse_decode(deserializer);
        let mut var_about = <Option<String>>::sse_decode(deserializer);
        let mut var_picture = <Option<String>>::sse_decode(deserializer);
        let mut var_banner = <Option<String>>::sse_decode(deserializer);
        let mut var_website = <Option<String>>::sse_decode(deserializer);
        let mut var_nip05 = <Option<String>>::sse_decode(deserializer);
        let mut var_lud06 = <Option<String>>::sse_decode(deserializer);
        let mut var_lud16 = <Option<String>>::sse_decode(deserializer);
        let mut var_custom = <std::collections::HashMap<String, String>>::sse_decode(deserializer);
        return crate::api::metadata::FlutterMetadata {
            name: var_name,
            display_name: var_displayName,
            about: var_about,
            picture: var_picture,
            banner: var_banner,
            website: var_website,
            nip05: var_nip05,
            lud06: var_lud06,
            lud16: var_lud16,
            custom: var_custom,
        };
    }
}

impl SseDecode for crate::api::groups::Group {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_mlsGroupId = <String>::sse_decode(deserializer);
        let mut var_nostrGroupId = <String>::sse_decode(deserializer);
        let mut var_name = <String>::sse_decode(deserializer);
        let mut var_description = <String>::sse_decode(deserializer);
        let mut var_imageHash = <Option<[u8; 32]>>::sse_decode(deserializer);
        let mut var_imageKey = <Option<[u8; 32]>>::sse_decode(deserializer);
        let mut var_adminPubkeys = <Vec<String>>::sse_decode(deserializer);
        let mut var_lastMessageId = <Option<String>>::sse_decode(deserializer);
        let mut var_lastMessageAt =
            <Option<chrono::DateTime<chrono::Utc>>>::sse_decode(deserializer);
        let mut var_epoch = <u64>::sse_decode(deserializer);
        let mut var_state = <crate::api::groups::GroupState>::sse_decode(deserializer);
        return crate::api::groups::Group {
            mls_group_id: var_mlsGroupId,
            nostr_group_id: var_nostrGroupId,
            name: var_name,
            description: var_description,
            image_hash: var_imageHash,
            image_key: var_imageKey,
            admin_pubkeys: var_adminPubkeys,
            last_message_id: var_lastMessageId,
            last_message_at: var_lastMessageAt,
            epoch: var_epoch,
            state: var_state,
        };
    }
}

impl SseDecode for crate::api::groups::GroupInformation {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_mlsGroupId = <String>::sse_decode(deserializer);
        let mut var_groupType = <crate::api::groups::GroupType>::sse_decode(deserializer);
        let mut var_createdAt = <chrono::DateTime<chrono::Utc>>::sse_decode(deserializer);
        let mut var_updatedAt = <chrono::DateTime<chrono::Utc>>::sse_decode(deserializer);
        return crate::api::groups::GroupInformation {
            mls_group_id: var_mlsGroupId,
            group_type: var_groupType,
            created_at: var_createdAt,
            updated_at: var_updatedAt,
        };
    }
}

impl SseDecode for crate::api::notifications::GroupPushDebugInfo {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_totalTokenCount = <u32>::sse_decode(deserializer);
        let mut var_activeTokenCount = <u32>::sse_decode(deserializer);
        let mut var_staleTokenCount = <u32>::sse_decode(deserializer);
        let mut var_missingRelayHintCount = <u32>::sse_decode(deserializer);
        let mut var_lastTokenListUpdatedAt =
            <Option<chrono::DateTime<chrono::Utc>>>::sse_decode(deserializer);
        let mut var_localRegistration =
            <crate::api::notifications::LocalPushRegistrationDebugInfo>::sse_decode(deserializer);
        let mut var_tokens =
            <Vec<crate::api::notifications::GroupPushTokenDebugEntry>>::sse_decode(deserializer);
        return crate::api::notifications::GroupPushDebugInfo {
            total_token_count: var_totalTokenCount,
            active_token_count: var_activeTokenCount,
            stale_token_count: var_staleTokenCount,
            missing_relay_hint_count: var_missingRelayHintCount,
            last_token_list_updated_at: var_lastTokenListUpdatedAt,
            local_registration: var_localRegistration,
            tokens: var_tokens,
        };
    }
}

impl SseDecode for crate::api::notifications::GroupPushTokenDebugEntry {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_memberPubkey = <String>::sse_decode(deserializer);
        let mut var_leafIndex = <u32>::sse_decode(deserializer);
        let mut var_serverPubkey = <String>::sse_decode(deserializer);
        let mut var_hasRelayHint = <bool>::sse_decode(deserializer);
        let mut var_activeLeaf = <bool>::sse_decode(deserializer);
        let mut var_memberMatchesActiveLeaf = <bool>::sse_decode(deserializer);
        let mut var_isLocalMember = <bool>::sse_decode(deserializer);
        let mut var_updatedAt = <chrono::DateTime<chrono::Utc>>::sse_decode(deserializer);
        return crate::api::notifications::GroupPushTokenDebugEntry {
            member_pubkey: var_memberPubkey,
            leaf_index: var_leafIndex,
            server_pubkey: var_serverPubkey,
            has_relay_hint: var_hasRelayHint,
            active_leaf: var_activeLeaf,
            member_matches_active_leaf: var_memberMatchesActiveLeaf,
            is_local_member: var_isLocalMember,
            updated_at: var_updatedAt,
        };
    }
}

impl SseDecode for crate::api::groups::GroupState {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <i32>::sse_decode(deserializer);
        return match inner {
            0 => crate::api::groups::GroupState::Active,
            1 => crate::api::groups::GroupState::Inactive,
            2 => crate::api::groups::GroupState::Pending,
            _ => unreachable!("Invalid variant for GroupState: {}", inner),
        };
    }
}

impl SseDecode for crate::api::group_state::GroupStateUpdate {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <i32>::sse_decode(deserializer);
        return match inner {
            0 => crate::api::group_state::GroupStateUpdate::LeftGroup,
            1 => crate::api::group_state::GroupStateUpdate::RemovedFromGroup,
            _ => unreachable!("Invalid variant for GroupStateUpdate: {}", inner),
        };
    }
}

impl SseDecode for crate::api::groups::GroupType {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <i32>::sse_decode(deserializer);
        return match inner {
            0 => crate::api::groups::GroupType::DirectMessage,
            1 => crate::api::groups::GroupType::Group,
            _ => unreachable!("Invalid variant for GroupType: {}", inner),
        };
    }
}

impl SseDecode for crate::api::groups::GroupWithInfoAndMembership {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_group = <crate::api::groups::Group>::sse_decode(deserializer);
        let mut var_info = <crate::api::groups::GroupInformation>::sse_decode(deserializer);
        let mut var_membership =
            <crate::api::account_groups::AccountGroup>::sse_decode(deserializer);
        return crate::api::groups::GroupWithInfoAndMembership {
            group: var_group,
            info: var_info,
            membership: var_membership,
        };
    }
}

impl SseDecode for crate::api::messages::HighlightSpan {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_start = <i32>::sse_decode(deserializer);
        let mut var_end = <i32>::sse_decode(deserializer);
        return crate::api::messages::HighlightSpan {
            start: var_start,
            end: var_end,
        };
    }
}

impl SseDecode for i32 {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        deserializer.cursor.read_i32::<NativeEndian>().unwrap()
    }
}

impl SseDecode for i64 {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        deserializer.cursor.read_i64::<NativeEndian>().unwrap()
    }
}

impl SseDecode for isize {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        deserializer.cursor.read_i64::<NativeEndian>().unwrap() as _
    }
}

impl SseDecode for crate::api::users::KeyPackageStatus {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <i32>::sse_decode(deserializer);
        return match inner {
            0 => crate::api::users::KeyPackageStatus::Valid,
            1 => crate::api::users::KeyPackageStatus::NotFound,
            2 => crate::api::users::KeyPackageStatus::Incompatible,
            _ => unreachable!("Invalid variant for KeyPackageStatus: {}", inner),
        };
    }
}

impl SseDecode for crate::api::groups::LeafNodeInfo {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_index = <u32>::sse_decode(deserializer);
        let mut var_encryptionKey = <String>::sse_decode(deserializer);
        let mut var_signatureKey = <String>::sse_decode(deserializer);
        let mut var_credentialIdentity = <String>::sse_decode(deserializer);
        return crate::api::groups::LeafNodeInfo {
            index: var_index,
            encryption_key: var_encryptionKey,
            signature_key: var_signatureKey,
            credential_identity: var_credentialIdentity,
        };
    }
}

impl SseDecode for Vec<RelayUrl> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<RelayUrl>::sse_decode(deserializer));
        }
        return ans_;
    }
}

impl SseDecode for Vec<Tag> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<Tag>::sse_decode(deserializer));
        }
        return ans_;
    }
}

impl SseDecode for Vec<String> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<String>::sse_decode(deserializer));
        }
        return ans_;
    }
}

impl SseDecode for Vec<crate::api::accounts::Account> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<crate::api::accounts::Account>::sse_decode(deserializer));
        }
        return ans_;
    }
}

impl SseDecode for Vec<crate::api::messages::ChatMessage> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<crate::api::messages::ChatMessage>::sse_decode(
                deserializer,
            ));
        }
        return ans_;
    }
}

impl SseDecode for Vec<crate::api::chat_summary::ChatSummary> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<crate::api::chat_summary::ChatSummary>::sse_decode(
                deserializer,
            ));
        }
        return ans_;
    }
}

impl SseDecode for Vec<crate::api::messages::EmojiReaction> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<crate::api::messages::EmojiReaction>::sse_decode(
                deserializer,
            ));
        }
        return ans_;
    }
}

impl SseDecode for Vec<crate::api::accounts::FlutterEvent> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<crate::api::accounts::FlutterEvent>::sse_decode(
                deserializer,
            ));
        }
        return ans_;
    }
}

impl SseDecode for Vec<crate::api::groups::Group> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<crate::api::groups::Group>::sse_decode(deserializer));
        }
        return ans_;
    }
}

impl SseDecode for Vec<crate::api::groups::GroupInformation> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<crate::api::groups::GroupInformation>::sse_decode(
                deserializer,
            ));
        }
        return ans_;
    }
}

impl SseDecode for Vec<crate::api::notifications::GroupPushTokenDebugEntry> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(
                <crate::api::notifications::GroupPushTokenDebugEntry>::sse_decode(deserializer),
            );
        }
        return ans_;
    }
}

impl SseDecode for Vec<crate::api::groups::GroupWithInfoAndMembership> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<crate::api::groups::GroupWithInfoAndMembership>::sse_decode(deserializer));
        }
        return ans_;
    }
}

impl SseDecode for Vec<crate::api::messages::HighlightSpan> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<crate::api::messages::HighlightSpan>::sse_decode(
                deserializer,
            ));
        }
        return ans_;
    }
}

impl SseDecode for Vec<crate::api::groups::LeafNodeInfo> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<crate::api::groups::LeafNodeInfo>::sse_decode(deserializer));
        }
        return ans_;
    }
}

impl SseDecode for Vec<Vec<String>> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<Vec<String>>::sse_decode(deserializer));
        }
        return ans_;
    }
}

impl SseDecode for Vec<Vec<crate::api::markdown::MarkdownTableCell>> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<Vec<crate::api::markdown::MarkdownTableCell>>::sse_decode(
                deserializer,
            ));
        }
        return ans_;
    }
}

impl SseDecode for Vec<crate::api::markdown::MarkdownAlignment> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<crate::api::markdown::MarkdownAlignment>::sse_decode(
                deserializer,
            ));
        }
        return ans_;
    }
}

impl SseDecode for Vec<crate::api::markdown::MarkdownBlock> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<crate::api::markdown::MarkdownBlock>::sse_decode(
                deserializer,
            ));
        }
        return ans_;
    }
}

impl SseDecode for Vec<crate::api::markdown::MarkdownInline> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<crate::api::markdown::MarkdownInline>::sse_decode(
                deserializer,
            ));
        }
        return ans_;
    }
}

impl SseDecode for Vec<crate::api::markdown::MarkdownListItem> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<crate::api::markdown::MarkdownListItem>::sse_decode(
                deserializer,
            ));
        }
        return ans_;
    }
}

impl SseDecode for Vec<crate::api::markdown::MarkdownTableCell> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<crate::api::markdown::MarkdownTableCell>::sse_decode(
                deserializer,
            ));
        }
        return ans_;
    }
}

impl SseDecode for Vec<crate::api::user_search::MatchedField> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<crate::api::user_search::MatchedField>::sse_decode(
                deserializer,
            ));
        }
        return ans_;
    }
}

impl SseDecode for Vec<crate::api::media_files::MediaFile> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<crate::api::media_files::MediaFile>::sse_decode(
                deserializer,
            ));
        }
        return ans_;
    }
}

impl SseDecode for Vec<crate::api::mute_list::MuteListEntry> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<crate::api::mute_list::MuteListEntry>::sse_decode(
                deserializer,
            ));
        }
        return ans_;
    }
}

impl SseDecode for Vec<u8> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<u8>::sse_decode(deserializer));
        }
        return ans_;
    }
}

impl SseDecode for Vec<(String, String)> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<(String, String)>::sse_decode(deserializer));
        }
        return ans_;
    }
}

impl SseDecode for Vec<crate::api::relays::Relay> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<crate::api::relays::Relay>::sse_decode(deserializer));
        }
        return ans_;
    }
}

impl SseDecode for Vec<crate::api::groups::RequiredProposal> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<crate::api::groups::RequiredProposal>::sse_decode(
                deserializer,
            ));
        }
        return ans_;
    }
}

impl SseDecode for Vec<crate::api::messages::SearchResult> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<crate::api::messages::SearchResult>::sse_decode(
                deserializer,
            ));
        }
        return ans_;
    }
}

impl SseDecode for Vec<crate::api::users::User> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<crate::api::users::User>::sse_decode(deserializer));
        }
        return ans_;
    }
}

impl SseDecode for Vec<crate::api::messages::UserReaction> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<crate::api::messages::UserReaction>::sse_decode(
                deserializer,
            ));
        }
        return ans_;
    }
}

impl SseDecode for Vec<crate::api::user_search::UserSearchResult> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut len_ = <i32>::sse_decode(deserializer);
        let mut ans_ = Vec::with_capacity(len_ as usize);
        for idx_ in 0..len_ {
            ans_.push(<crate::api::user_search::UserSearchResult>::sse_decode(
                deserializer,
            ));
        }
        return ans_;
    }
}

impl SseDecode for crate::api::notifications::LocalPushRegistrationDebugInfo {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_registered = <bool>::sse_decode(deserializer);
        let mut var_shareable = <bool>::sse_decode(deserializer);
        let mut var_notificationsEnabled = <bool>::sse_decode(deserializer);
        let mut var_localLeafIndex = <Option<u32>>::sse_decode(deserializer);
        let mut var_localTokenCached = <bool>::sse_decode(deserializer);
        return crate::api::notifications::LocalPushRegistrationDebugInfo {
            registered: var_registered,
            shareable: var_shareable,
            notifications_enabled: var_notificationsEnabled,
            local_leaf_index: var_localLeafIndex,
            local_token_cached: var_localTokenCached,
        };
    }
}

impl SseDecode for crate::api::accounts::LoginResult {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_account = <crate::api::accounts::Account>::sse_decode(deserializer);
        let mut var_status = <crate::api::accounts::LoginStatus>::sse_decode(deserializer);
        return crate::api::accounts::LoginResult {
            account: var_account,
            status: var_status,
        };
    }
}

impl SseDecode for crate::api::accounts::LoginStatus {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <i32>::sse_decode(deserializer);
        return match inner {
            0 => crate::api::accounts::LoginStatus::Complete,
            1 => crate::api::accounts::LoginStatus::NeedsRelayLists,
            _ => unreachable!("Invalid variant for LoginStatus: {}", inner),
        };
    }
}

impl SseDecode for crate::api::markdown::MarkdownAlignment {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <i32>::sse_decode(deserializer);
        return match inner {
            0 => crate::api::markdown::MarkdownAlignment::None,
            1 => crate::api::markdown::MarkdownAlignment::Left,
            2 => crate::api::markdown::MarkdownAlignment::Center,
            3 => crate::api::markdown::MarkdownAlignment::Right,
            _ => unreachable!("Invalid variant for MarkdownAlignment: {}", inner),
        };
    }
}

impl SseDecode for crate::api::markdown::MarkdownAutolinkKind {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <i32>::sse_decode(deserializer);
        return match inner {
            0 => crate::api::markdown::MarkdownAutolinkKind::Uri,
            1 => crate::api::markdown::MarkdownAutolinkKind::Email,
            _ => unreachable!("Invalid variant for MarkdownAutolinkKind: {}", inner),
        };
    }
}

impl SseDecode for crate::api::markdown::MarkdownBlock {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut tag_ = <i32>::sse_decode(deserializer);
        match tag_ {
            0 => {
                let mut var_inlines =
                    <Vec<crate::api::markdown::MarkdownInline>>::sse_decode(deserializer);
                return crate::api::markdown::MarkdownBlock::Paragraph {
                    inlines: var_inlines,
                };
            }
            1 => {
                let mut var_level = <u8>::sse_decode(deserializer);
                let mut var_inlines =
                    <Vec<crate::api::markdown::MarkdownInline>>::sse_decode(deserializer);
                return crate::api::markdown::MarkdownBlock::Heading {
                    level: var_level,
                    inlines: var_inlines,
                };
            }
            2 => {
                return crate::api::markdown::MarkdownBlock::ThematicBreak;
            }
            3 => {
                let mut var_kind =
                    <crate::api::markdown::MarkdownCodeBlockKind>::sse_decode(deserializer);
                let mut var_info = <String>::sse_decode(deserializer);
                let mut var_content = <String>::sse_decode(deserializer);
                return crate::api::markdown::MarkdownBlock::CodeBlock {
                    kind: var_kind,
                    info: var_info,
                    content: var_content,
                };
            }
            4 => {
                let mut var_blocks =
                    <Vec<crate::api::markdown::MarkdownBlock>>::sse_decode(deserializer);
                return crate::api::markdown::MarkdownBlock::BlockQuote { blocks: var_blocks };
            }
            5 => {
                let mut var_kind =
                    <crate::api::markdown::MarkdownListKind>::sse_decode(deserializer);
                let mut var_tight = <bool>::sse_decode(deserializer);
                let mut var_items =
                    <Vec<crate::api::markdown::MarkdownListItem>>::sse_decode(deserializer);
                return crate::api::markdown::MarkdownBlock::List {
                    kind: var_kind,
                    tight: var_tight,
                    items: var_items,
                };
            }
            6 => {
                let mut var_alignments =
                    <Vec<crate::api::markdown::MarkdownAlignment>>::sse_decode(deserializer);
                let mut var_header =
                    <Vec<crate::api::markdown::MarkdownTableCell>>::sse_decode(deserializer);
                let mut var_rows =
                    <Vec<Vec<crate::api::markdown::MarkdownTableCell>>>::sse_decode(deserializer);
                return crate::api::markdown::MarkdownBlock::Table {
                    alignments: var_alignments,
                    header: var_header,
                    rows: var_rows,
                };
            }
            7 => {
                let mut var_content = <String>::sse_decode(deserializer);
                return crate::api::markdown::MarkdownBlock::MathBlock {
                    content: var_content,
                };
            }
            _ => {
                unimplemented!("");
            }
        }
    }
}

impl SseDecode for crate::api::markdown::MarkdownCodeBlockKind {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <i32>::sse_decode(deserializer);
        return match inner {
            0 => crate::api::markdown::MarkdownCodeBlockKind::Indented,
            1 => crate::api::markdown::MarkdownCodeBlockKind::Fenced,
            _ => unreachable!("Invalid variant for MarkdownCodeBlockKind: {}", inner),
        };
    }
}

impl SseDecode for crate::api::markdown::MarkdownDocument {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_blocks = <Vec<crate::api::markdown::MarkdownBlock>>::sse_decode(deserializer);
        return crate::api::markdown::MarkdownDocument { blocks: var_blocks };
    }
}

impl SseDecode for crate::api::markdown::MarkdownInline {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut tag_ = <i32>::sse_decode(deserializer);
        match tag_ {
            0 => {
                let mut var_content = <String>::sse_decode(deserializer);
                return crate::api::markdown::MarkdownInline::Text {
                    content: var_content,
                };
            }
            1 => {
                return crate::api::markdown::MarkdownInline::SoftBreak;
            }
            2 => {
                return crate::api::markdown::MarkdownInline::HardBreak;
            }
            3 => {
                let mut var_content = <String>::sse_decode(deserializer);
                return crate::api::markdown::MarkdownInline::Code {
                    content: var_content,
                };
            }
            4 => {
                let mut var_children =
                    <Vec<crate::api::markdown::MarkdownInline>>::sse_decode(deserializer);
                return crate::api::markdown::MarkdownInline::Emph {
                    children: var_children,
                };
            }
            5 => {
                let mut var_children =
                    <Vec<crate::api::markdown::MarkdownInline>>::sse_decode(deserializer);
                return crate::api::markdown::MarkdownInline::Strong {
                    children: var_children,
                };
            }
            6 => {
                let mut var_children =
                    <Vec<crate::api::markdown::MarkdownInline>>::sse_decode(deserializer);
                return crate::api::markdown::MarkdownInline::Strikethrough {
                    children: var_children,
                };
            }
            7 => {
                let mut var_dest = <String>::sse_decode(deserializer);
                let mut var_title = <Option<String>>::sse_decode(deserializer);
                let mut var_children =
                    <Vec<crate::api::markdown::MarkdownInline>>::sse_decode(deserializer);
                return crate::api::markdown::MarkdownInline::Link {
                    dest: var_dest,
                    title: var_title,
                    children: var_children,
                };
            }
            8 => {
                let mut var_dest = <String>::sse_decode(deserializer);
                let mut var_title = <Option<String>>::sse_decode(deserializer);
                let mut var_alt =
                    <Vec<crate::api::markdown::MarkdownInline>>::sse_decode(deserializer);
                return crate::api::markdown::MarkdownInline::Image {
                    dest: var_dest,
                    title: var_title,
                    alt: var_alt,
                };
            }
            9 => {
                let mut var_url = <String>::sse_decode(deserializer);
                let mut var_kind =
                    <crate::api::markdown::MarkdownAutolinkKind>::sse_decode(deserializer);
                return crate::api::markdown::MarkdownInline::Autolink {
                    url: var_url,
                    kind: var_kind,
                };
            }
            10 => {
                let mut var_content = <String>::sse_decode(deserializer);
                return crate::api::markdown::MarkdownInline::Math {
                    content: var_content,
                };
            }
            11 => {
                let mut var_entity =
                    <crate::api::markdown::MarkdownNostrEntity>::sse_decode(deserializer);
                return crate::api::markdown::MarkdownInline::NostrMention { entity: var_entity };
            }
            12 => {
                let mut var_entity =
                    <crate::api::markdown::MarkdownNostrEntity>::sse_decode(deserializer);
                return crate::api::markdown::MarkdownInline::NostrUri { entity: var_entity };
            }
            _ => {
                unimplemented!("");
            }
        }
    }
}

impl SseDecode for crate::api::markdown::MarkdownListItem {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_blocks = <Vec<crate::api::markdown::MarkdownBlock>>::sse_decode(deserializer);
        let mut var_checked = <Option<bool>>::sse_decode(deserializer);
        return crate::api::markdown::MarkdownListItem {
            blocks: var_blocks,
            checked: var_checked,
        };
    }
}

impl SseDecode for crate::api::markdown::MarkdownListKind {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut tag_ = <i32>::sse_decode(deserializer);
        match tag_ {
            0 => {
                let mut var_marker = <String>::sse_decode(deserializer);
                return crate::api::markdown::MarkdownListKind::Bullet { marker: var_marker };
            }
            1 => {
                let mut var_start = <u32>::sse_decode(deserializer);
                let mut var_delimiter = <String>::sse_decode(deserializer);
                return crate::api::markdown::MarkdownListKind::Ordered {
                    start: var_start,
                    delimiter: var_delimiter,
                };
            }
            _ => {
                unimplemented!("");
            }
        }
    }
}

impl SseDecode for crate::api::markdown::MarkdownNostrEntity {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_hrp = <crate::api::markdown::MarkdownNostrHrp>::sse_decode(deserializer);
        let mut var_bech32 = <String>::sse_decode(deserializer);
        return crate::api::markdown::MarkdownNostrEntity {
            hrp: var_hrp,
            bech32: var_bech32,
        };
    }
}

impl SseDecode for crate::api::markdown::MarkdownNostrHrp {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <i32>::sse_decode(deserializer);
        return match inner {
            0 => crate::api::markdown::MarkdownNostrHrp::Npub,
            1 => crate::api::markdown::MarkdownNostrHrp::Note,
            2 => crate::api::markdown::MarkdownNostrHrp::Nevent,
            3 => crate::api::markdown::MarkdownNostrHrp::Nprofile,
            4 => crate::api::markdown::MarkdownNostrHrp::Naddr,
            5 => crate::api::markdown::MarkdownNostrHrp::Nrelay,
            _ => unreachable!("Invalid variant for MarkdownNostrHrp: {}", inner),
        };
    }
}

impl SseDecode for crate::api::markdown::MarkdownTableCell {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_inlines = <Vec<crate::api::markdown::MarkdownInline>>::sse_decode(deserializer);
        return crate::api::markdown::MarkdownTableCell {
            inlines: var_inlines,
        };
    }
}

impl SseDecode for crate::api::user_search::MatchQuality {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <i32>::sse_decode(deserializer);
        return match inner {
            0 => crate::api::user_search::MatchQuality::Exact,
            1 => crate::api::user_search::MatchQuality::Prefix,
            2 => crate::api::user_search::MatchQuality::Contains,
            _ => unreachable!("Invalid variant for MatchQuality: {}", inner),
        };
    }
}

impl SseDecode for crate::api::user_search::MatchedField {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <i32>::sse_decode(deserializer);
        return match inner {
            0 => crate::api::user_search::MatchedField::Name,
            1 => crate::api::user_search::MatchedField::Nip05,
            2 => crate::api::user_search::MatchedField::DisplayName,
            3 => crate::api::user_search::MatchedField::About,
            _ => unreachable!("Invalid variant for MatchedField: {}", inner),
        };
    }
}

impl SseDecode for crate::api::media_files::MediaFile {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_id = <String>::sse_decode(deserializer);
        let mut var_mlsGroupId = <String>::sse_decode(deserializer);
        let mut var_accountPubkey = <String>::sse_decode(deserializer);
        let mut var_filePath = <String>::sse_decode(deserializer);
        let mut var_originalFileHash = <Option<String>>::sse_decode(deserializer);
        let mut var_encryptedFileHash = <String>::sse_decode(deserializer);
        let mut var_mimeType = <String>::sse_decode(deserializer);
        let mut var_mediaType = <String>::sse_decode(deserializer);
        let mut var_blossomUrl = <String>::sse_decode(deserializer);
        let mut var_nostrKey = <String>::sse_decode(deserializer);
        let mut var_fileMetadata =
            <Option<crate::api::media_files::FileMetadata>>::sse_decode(deserializer);
        let mut var_createdAt = <chrono::DateTime<chrono::Utc>>::sse_decode(deserializer);
        let mut var_nonce = <Option<String>>::sse_decode(deserializer);
        let mut var_schemeVersion = <Option<String>>::sse_decode(deserializer);
        return crate::api::media_files::MediaFile {
            id: var_id,
            mls_group_id: var_mlsGroupId,
            account_pubkey: var_accountPubkey,
            file_path: var_filePath,
            original_file_hash: var_originalFileHash,
            encrypted_file_hash: var_encryptedFileHash,
            mime_type: var_mimeType,
            media_type: var_mediaType,
            blossom_url: var_blossomUrl,
            nostr_key: var_nostrKey,
            file_metadata: var_fileMetadata,
            created_at: var_createdAt,
            nonce: var_nonce,
            scheme_version: var_schemeVersion,
        };
    }
}

impl SseDecode for crate::api::messages::MessageStreamItem {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut tag_ = <i32>::sse_decode(deserializer);
        match tag_ {
            0 => {
                let mut var_messages =
                    <Vec<crate::api::messages::ChatMessage>>::sse_decode(deserializer);
                return crate::api::messages::MessageStreamItem::InitialSnapshot {
                    messages: var_messages,
                };
            }
            1 => {
                let mut var_update =
                    <crate::api::messages::MessageUpdate>::sse_decode(deserializer);
                return crate::api::messages::MessageStreamItem::Update { update: var_update };
            }
            _ => {
                unimplemented!("");
            }
        }
    }
}

impl SseDecode for crate::api::messages::MessageUpdate {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_trigger = <crate::api::messages::UpdateTrigger>::sse_decode(deserializer);
        let mut var_message = <crate::api::messages::ChatMessage>::sse_decode(deserializer);
        return crate::api::messages::MessageUpdate {
            trigger: var_trigger,
            message: var_message,
        };
    }
}

impl SseDecode for crate::api::messages::MessageWithTokens {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_id = <String>::sse_decode(deserializer);
        let mut var_pubkey = <String>::sse_decode(deserializer);
        let mut var_kind = <u16>::sse_decode(deserializer);
        let mut var_createdAt = <chrono::DateTime<chrono::Utc>>::sse_decode(deserializer);
        let mut var_content = <Option<String>>::sse_decode(deserializer);
        let mut var_tokens = <crate::api::markdown::MarkdownDocument>::sse_decode(deserializer);
        return crate::api::messages::MessageWithTokens {
            id: var_id,
            pubkey: var_pubkey,
            kind: var_kind,
            created_at: var_createdAt,
            content: var_content,
            tokens: var_tokens,
        };
    }
}

impl SseDecode for crate::api::mute_list::MuteListEntry {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_accountPubkey = <String>::sse_decode(deserializer);
        let mut var_mutedPubkey = <String>::sse_decode(deserializer);
        let mut var_isPrivate = <bool>::sse_decode(deserializer);
        let mut var_createdAt = <chrono::DateTime<chrono::Utc>>::sse_decode(deserializer);
        return crate::api::mute_list::MuteListEntry {
            account_pubkey: var_accountPubkey,
            muted_pubkey: var_mutedPubkey,
            is_private: var_isPrivate,
            created_at: var_createdAt,
        };
    }
}

impl SseDecode for crate::api::notifications::NotificationTrigger {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <i32>::sse_decode(deserializer);
        return match inner {
            0 => crate::api::notifications::NotificationTrigger::NewMessage,
            1 => crate::api::notifications::NotificationTrigger::GroupInvite,
            _ => unreachable!("Invalid variant for NotificationTrigger: {}", inner),
        };
    }
}

impl SseDecode for crate::api::notifications::NotificationUpdate {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_trigger =
            <crate::api::notifications::NotificationTrigger>::sse_decode(deserializer);
        let mut var_mlsGroupId = <String>::sse_decode(deserializer);
        let mut var_groupName = <Option<String>>::sse_decode(deserializer);
        let mut var_isDm = <bool>::sse_decode(deserializer);
        let mut var_receiver =
            <crate::api::notifications::NotificationUser>::sse_decode(deserializer);
        let mut var_sender =
            <crate::api::notifications::NotificationUser>::sse_decode(deserializer);
        let mut var_content = <String>::sse_decode(deserializer);
        let mut var_timestamp = <chrono::DateTime<chrono::Utc>>::sse_decode(deserializer);
        return crate::api::notifications::NotificationUpdate {
            trigger: var_trigger,
            mls_group_id: var_mlsGroupId,
            group_name: var_groupName,
            is_dm: var_isDm,
            receiver: var_receiver,
            sender: var_sender,
            content: var_content,
            timestamp: var_timestamp,
        };
    }
}

impl SseDecode for crate::api::notifications::NotificationUser {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_pubkey = <String>::sse_decode(deserializer);
        let mut var_displayName = <Option<String>>::sse_decode(deserializer);
        let mut var_pictureUrl = <Option<String>>::sse_decode(deserializer);
        return crate::api::notifications::NotificationUser {
            pubkey: var_pubkey,
            display_name: var_displayName,
            picture_url: var_pictureUrl,
        };
    }
}

impl SseDecode for Option<String> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        if (<bool>::sse_decode(deserializer)) {
            return Some(<String>::sse_decode(deserializer));
        } else {
            return None;
        }
    }
}

impl SseDecode for Option<chrono::DateTime<chrono::Utc>> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        if (<bool>::sse_decode(deserializer)) {
            return Some(<chrono::DateTime<chrono::Utc>>::sse_decode(deserializer));
        } else {
            return None;
        }
    }
}

impl SseDecode for Option<bool> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        if (<bool>::sse_decode(deserializer)) {
            return Some(<bool>::sse_decode(deserializer));
        } else {
            return None;
        }
    }
}

impl SseDecode for Option<crate::api::messages::ChatMessage> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        if (<bool>::sse_decode(deserializer)) {
            return Some(<crate::api::messages::ChatMessage>::sse_decode(
                deserializer,
            ));
        } else {
            return None;
        }
    }
}

impl SseDecode for Option<crate::api::messages::ChatMessageSummary> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        if (<bool>::sse_decode(deserializer)) {
            return Some(<crate::api::messages::ChatMessageSummary>::sse_decode(
                deserializer,
            ));
        } else {
            return None;
        }
    }
}

impl SseDecode for Option<crate::api::messages::DeliveryStatus> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        if (<bool>::sse_decode(deserializer)) {
            return Some(<crate::api::messages::DeliveryStatus>::sse_decode(
                deserializer,
            ));
        } else {
            return None;
        }
    }
}

impl SseDecode for Option<crate::api::drafts::Draft> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        if (<bool>::sse_decode(deserializer)) {
            return Some(<crate::api::drafts::Draft>::sse_decode(deserializer));
        } else {
            return None;
        }
    }
}

impl SseDecode for Option<crate::api::media_files::FileMetadata> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        if (<bool>::sse_decode(deserializer)) {
            return Some(<crate::api::media_files::FileMetadata>::sse_decode(
                deserializer,
            ));
        } else {
            return None;
        }
    }
}

impl SseDecode for Option<crate::api::accounts::FlutterEvent> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        if (<bool>::sse_decode(deserializer)) {
            return Some(<crate::api::accounts::FlutterEvent>::sse_decode(
                deserializer,
            ));
        } else {
            return None;
        }
    }
}

impl SseDecode for Option<i64> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        if (<bool>::sse_decode(deserializer)) {
            return Some(<i64>::sse_decode(deserializer));
        } else {
            return None;
        }
    }
}

impl SseDecode for Option<crate::api::notifications::PushRegistration> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        if (<bool>::sse_decode(deserializer)) {
            return Some(<crate::api::notifications::PushRegistration>::sse_decode(
                deserializer,
            ));
        } else {
            return None;
        }
    }
}

impl SseDecode for Option<u32> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        if (<bool>::sse_decode(deserializer)) {
            return Some(<u32>::sse_decode(deserializer));
        } else {
            return None;
        }
    }
}

impl SseDecode for Option<u64> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        if (<bool>::sse_decode(deserializer)) {
            return Some(<u64>::sse_decode(deserializer));
        } else {
            return None;
        }
    }
}

impl SseDecode for Option<Vec<Tag>> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        if (<bool>::sse_decode(deserializer)) {
            return Some(<Vec<Tag>>::sse_decode(deserializer));
        } else {
            return None;
        }
    }
}

impl SseDecode for Option<Vec<String>> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        if (<bool>::sse_decode(deserializer)) {
            return Some(<Vec<String>>::sse_decode(deserializer));
        } else {
            return None;
        }
    }
}

impl SseDecode for Option<Vec<u8>> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        if (<bool>::sse_decode(deserializer)) {
            return Some(<Vec<u8>>::sse_decode(deserializer));
        } else {
            return None;
        }
    }
}

impl SseDecode for Option<[u8; 12]> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        if (<bool>::sse_decode(deserializer)) {
            return Some(<[u8; 12]>::sse_decode(deserializer));
        } else {
            return None;
        }
    }
}

impl SseDecode for Option<[u8; 32]> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        if (<bool>::sse_decode(deserializer)) {
            return Some(<[u8; 32]>::sse_decode(deserializer));
        } else {
            return None;
        }
    }
}

impl SseDecode for crate::api::notifications::PushPlatform {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <i32>::sse_decode(deserializer);
        return match inner {
            0 => crate::api::notifications::PushPlatform::Apns,
            1 => crate::api::notifications::PushPlatform::Fcm,
            _ => unreachable!("Invalid variant for PushPlatform: {}", inner),
        };
    }
}

impl SseDecode for crate::api::notifications::PushRegistration {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_accountPubkey = <String>::sse_decode(deserializer);
        let mut var_platform = <crate::api::notifications::PushPlatform>::sse_decode(deserializer);
        let mut var_rawToken = <String>::sse_decode(deserializer);
        let mut var_serverPubkey = <String>::sse_decode(deserializer);
        let mut var_relayHint = <Option<String>>::sse_decode(deserializer);
        let mut var_createdAt = <chrono::DateTime<chrono::Utc>>::sse_decode(deserializer);
        let mut var_updatedAt = <chrono::DateTime<chrono::Utc>>::sse_decode(deserializer);
        let mut var_lastSharedAt =
            <Option<chrono::DateTime<chrono::Utc>>>::sse_decode(deserializer);
        return crate::api::notifications::PushRegistration {
            account_pubkey: var_accountPubkey,
            platform: var_platform,
            raw_token: var_rawToken,
            server_pubkey: var_serverPubkey,
            relay_hint: var_relayHint,
            created_at: var_createdAt,
            updated_at: var_updatedAt,
            last_shared_at: var_lastSharedAt,
        };
    }
}

impl SseDecode for crate::api::groups::RatchetTreeInfo {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_treeHash = <String>::sse_decode(deserializer);
        let mut var_serializedTree = <String>::sse_decode(deserializer);
        let mut var_leafNodes = <Vec<crate::api::groups::LeafNodeInfo>>::sse_decode(deserializer);
        return crate::api::groups::RatchetTreeInfo {
            tree_hash: var_treeHash,
            serialized_tree: var_serializedTree,
            leaf_nodes: var_leafNodes,
        };
    }
}

impl SseDecode for crate::api::messages::ReactionSummary {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_byEmoji = <Vec<crate::api::messages::EmojiReaction>>::sse_decode(deserializer);
        let mut var_userReactions =
            <Vec<crate::api::messages::UserReaction>>::sse_decode(deserializer);
        return crate::api::messages::ReactionSummary {
            by_emoji: var_byEmoji,
            user_reactions: var_userReactions,
        };
    }
}

impl SseDecode for (String, String) {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_field0 = <String>::sse_decode(deserializer);
        let mut var_field1 = <String>::sse_decode(deserializer);
        return (var_field0, var_field1);
    }
}

impl SseDecode for crate::api::relays::Relay {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_url = <String>::sse_decode(deserializer);
        let mut var_createdAt = <chrono::DateTime<chrono::Utc>>::sse_decode(deserializer);
        let mut var_updatedAt = <chrono::DateTime<chrono::Utc>>::sse_decode(deserializer);
        return crate::api::relays::Relay {
            url: var_url,
            created_at: var_createdAt,
            updated_at: var_updatedAt,
        };
    }
}

impl SseDecode for crate::api::groups::RequiredProposal {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <i32>::sse_decode(deserializer);
        return match inner {
            0 => crate::api::groups::RequiredProposal::SelfRemove,
            1 => crate::api::groups::RequiredProposal::Unknown,
            _ => unreachable!("Invalid variant for RequiredProposal: {}", inner),
        };
    }
}

impl SseDecode for crate::api::messages::SearchResult {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_message = <crate::api::messages::ChatMessage>::sse_decode(deserializer);
        let mut var_mlsGroupId = <String>::sse_decode(deserializer);
        let mut var_highlightSpans =
            <Vec<crate::api::messages::HighlightSpan>>::sse_decode(deserializer);
        let mut var_position = <u64>::sse_decode(deserializer);
        return crate::api::messages::SearchResult {
            message: var_message,
            mls_group_id: var_mlsGroupId,
            highlight_spans: var_highlightSpans,
            position: var_position,
        };
    }
}

impl SseDecode for crate::api::user_search::SearchUpdateTrigger {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut tag_ = <i32>::sse_decode(deserializer);
        match tag_ {
            0 => {
                let mut var_radius = <u8>::sse_decode(deserializer);
                return crate::api::user_search::SearchUpdateTrigger::RadiusStarted {
                    radius: var_radius,
                };
            }
            1 => {
                return crate::api::user_search::SearchUpdateTrigger::ResultsFound;
            }
            2 => {
                let mut var_radius = <u8>::sse_decode(deserializer);
                let mut var_totalPubkeysSearched = <u64>::sse_decode(deserializer);
                return crate::api::user_search::SearchUpdateTrigger::RadiusCompleted {
                    radius: var_radius,
                    total_pubkeys_searched: var_totalPubkeysSearched,
                };
            }
            3 => {
                let mut var_radius = <u8>::sse_decode(deserializer);
                return crate::api::user_search::SearchUpdateTrigger::RadiusTimeout {
                    radius: var_radius,
                };
            }
            4 => {
                let mut var_finalRadius = <u8>::sse_decode(deserializer);
                let mut var_totalResults = <u64>::sse_decode(deserializer);
                return crate::api::user_search::SearchUpdateTrigger::SearchCompleted {
                    final_radius: var_finalRadius,
                    total_results: var_totalResults,
                };
            }
            5 => {
                let mut var_message = <String>::sse_decode(deserializer);
                return crate::api::user_search::SearchUpdateTrigger::Error {
                    message: var_message,
                };
            }
            _ => {
                unimplemented!("");
            }
        }
    }
}

impl SseDecode for u16 {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        deserializer.cursor.read_u16::<NativeEndian>().unwrap()
    }
}

impl SseDecode for u32 {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        deserializer.cursor.read_u32::<NativeEndian>().unwrap()
    }
}

impl SseDecode for u64 {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        deserializer.cursor.read_u64::<NativeEndian>().unwrap()
    }
}

impl SseDecode for u8 {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        deserializer.cursor.read_u8().unwrap()
    }
}

impl SseDecode for [u8; 12] {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <Vec<u8>>::sse_decode(deserializer);
        return flutter_rust_bridge::for_generated::from_vec_to_array(inner);
    }
}

impl SseDecode for [u8; 32] {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <Vec<u8>>::sse_decode(deserializer);
        return flutter_rust_bridge::for_generated::from_vec_to_array(inner);
    }
}

impl SseDecode for () {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {}
}

impl SseDecode for crate::api::messages::UpdateTrigger {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <i32>::sse_decode(deserializer);
        return match inner {
            0 => crate::api::messages::UpdateTrigger::NewMessage,
            1 => crate::api::messages::UpdateTrigger::ReactionAdded,
            2 => crate::api::messages::UpdateTrigger::ReactionRemoved,
            3 => crate::api::messages::UpdateTrigger::MessageDeleted,
            4 => crate::api::messages::UpdateTrigger::DeliveryStatusChanged,
            _ => unreachable!("Invalid variant for UpdateTrigger: {}", inner),
        };
    }
}

impl SseDecode for crate::api::groups::UploadGroupImageResult {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_encryptedHash = <[u8; 32]>::sse_decode(deserializer);
        let mut var_imageKey = <[u8; 32]>::sse_decode(deserializer);
        let mut var_imageNonce = <[u8; 12]>::sse_decode(deserializer);
        return crate::api::groups::UploadGroupImageResult {
            encrypted_hash: var_encryptedHash,
            image_key: var_imageKey,
            image_nonce: var_imageNonce,
        };
    }
}

impl SseDecode for crate::api::users::User {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_pubkey = <String>::sse_decode(deserializer);
        let mut var_metadata = <crate::api::metadata::FlutterMetadata>::sse_decode(deserializer);
        let mut var_createdAt = <chrono::DateTime<chrono::Utc>>::sse_decode(deserializer);
        let mut var_updatedAt = <chrono::DateTime<chrono::Utc>>::sse_decode(deserializer);
        return crate::api::users::User {
            pubkey: var_pubkey,
            metadata: var_metadata,
            created_at: var_createdAt,
            updated_at: var_updatedAt,
        };
    }
}

impl SseDecode for crate::api::messages::UserReaction {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_reactionId = <String>::sse_decode(deserializer);
        let mut var_user = <String>::sse_decode(deserializer);
        let mut var_emoji = <String>::sse_decode(deserializer);
        let mut var_createdAt = <chrono::DateTime<chrono::Utc>>::sse_decode(deserializer);
        return crate::api::messages::UserReaction {
            reaction_id: var_reactionId,
            user: var_user,
            emoji: var_emoji,
            created_at: var_createdAt,
        };
    }
}

impl SseDecode for crate::api::user_search::UserSearchResult {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_pubkey = <String>::sse_decode(deserializer);
        let mut var_metadata = <crate::api::metadata::FlutterMetadata>::sse_decode(deserializer);
        let mut var_radius = <u8>::sse_decode(deserializer);
        let mut var_matchQuality =
            <crate::api::user_search::MatchQuality>::sse_decode(deserializer);
        let mut var_bestField = <crate::api::user_search::MatchedField>::sse_decode(deserializer);
        let mut var_matchedFields =
            <Vec<crate::api::user_search::MatchedField>>::sse_decode(deserializer);
        return crate::api::user_search::UserSearchResult {
            pubkey: var_pubkey,
            metadata: var_metadata,
            radius: var_radius,
            match_quality: var_matchQuality,
            best_field: var_bestField,
            matched_fields: var_matchedFields,
        };
    }
}

impl SseDecode for crate::api::user_search::UserSearchUpdate {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_trigger =
            <crate::api::user_search::SearchUpdateTrigger>::sse_decode(deserializer);
        let mut var_newResults =
            <Vec<crate::api::user_search::UserSearchResult>>::sse_decode(deserializer);
        let mut var_totalResultCount = <u64>::sse_decode(deserializer);
        return crate::api::user_search::UserSearchUpdate {
            trigger: var_trigger,
            new_results: var_newResults,
            total_result_count: var_totalResultCount,
        };
    }
}

impl SseDecode for crate::api::users::UserStreamItem {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut tag_ = <i32>::sse_decode(deserializer);
        match tag_ {
            0 => {
                let mut var_user = <crate::api::users::User>::sse_decode(deserializer);
                return crate::api::users::UserStreamItem::InitialSnapshot { user: var_user };
            }
            1 => {
                let mut var_update = <crate::api::users::UserUpdate>::sse_decode(deserializer);
                return crate::api::users::UserStreamItem::Update { update: var_update };
            }
            _ => {
                unimplemented!("");
            }
        }
    }
}

impl SseDecode for crate::api::users::UserUpdate {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_trigger = <crate::api::users::UserUpdateTrigger>::sse_decode(deserializer);
        let mut var_user = <crate::api::users::User>::sse_decode(deserializer);
        return crate::api::users::UserUpdate {
            trigger: var_trigger,
            user: var_user,
        };
    }
}

impl SseDecode for crate::api::users::UserUpdateTrigger {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut inner = <i32>::sse_decode(deserializer);
        return match inner {
            0 => crate::api::users::UserUpdateTrigger::UserCreated,
            1 => crate::api::users::UserUpdateTrigger::MetadataChanged,
            2 => crate::api::users::UserUpdateTrigger::LocalMetadataChanged,
            _ => unreachable!("Invalid variant for UserUpdateTrigger: {}", inner),
        };
    }
}

impl SseDecode for usize {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        deserializer.cursor.read_u64::<NativeEndian>().unwrap() as _
    }
}

impl SseDecode for crate::api::WhitenoiseConfig {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_decode(deserializer: &mut flutter_rust_bridge::for_generated::SseDeserializer) -> Self {
        let mut var_dataDir = <String>::sse_decode(deserializer);
        let mut var_logsDir = <String>::sse_decode(deserializer);
        let mut var_defaultRelayUrls = <Option<Vec<String>>>::sse_decode(deserializer);
        return crate::api::WhitenoiseConfig {
            data_dir: var_dataDir,
            logs_dir: var_logsDir,
            default_relay_urls: var_defaultRelayUrls,
        };
    }
}

fn pde_ffi_dispatcher_primary_impl(
    func_id: i32,
    port: flutter_rust_bridge::for_generated::MessagePort,
    ptr: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len: i32,
    data_len: i32,
) {
    // Codec=Pde (Serialization + dispatch), see doc to use other codecs
    match func_id {
        1 => wire__crate__api__signer__DartSigner_new_impl(port, ptr, rust_vec_len, data_len),
        2 => wire__crate__api__account_groups__accept_account_group_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        3 => wire__crate__api__accounts__account_follows_impl(port, ptr, rust_vec_len, data_len),
        4 => {
            wire__crate__api__accounts__account_key_package_impl(port, ptr, rust_vec_len, data_len)
        }
        5 => {
            wire__crate__api__accounts__account_key_packages_impl(port, ptr, rust_vec_len, data_len)
        }
        6 => wire__crate__api__accounts__account_relays_impl(port, ptr, rust_vec_len, data_len),
        7 => wire__crate__api__accounts__account_settings_impl(port, ptr, rust_vec_len, data_len),
        8 => wire__crate__api__groups__active_groups_impl(port, ptr, rust_vec_len, data_len),
        9 => wire__crate__api__accounts__add_account_relay_impl(port, ptr, rust_vec_len, data_len),
        10 => {
            wire__crate__api__groups__add_members_to_group_impl(port, ptr, rust_vec_len, data_len)
        }
        11 => wire__crate__api__error__api_error_error_type_impl(port, ptr, rust_vec_len, data_len),
        12 => {
            wire__crate__api__error__api_error_message_text_impl(port, ptr, rust_vec_len, data_len)
        }
        13 => wire__crate__api__app_settings_language_impl(port, ptr, rust_vec_len, data_len),
        14 => wire__crate__api__app_settings_theme_mode_impl(port, ptr, rust_vec_len, data_len),
        15 => {
            wire__crate__api__account_groups__archive_chat_impl(port, ptr, rust_vec_len, data_len)
        }
        16 => wire__crate__api__mute_list__block_user_impl(port, ptr, rust_vec_len, data_len),
        17 => wire__crate__api__groups__clear_chat_impl(port, ptr, rust_vec_len, data_len),
        18 => wire__crate__api__notifications__clear_push_registration_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        19 => wire__crate__api__groups__create_group_impl(port, ptr, rust_vec_len, data_len),
        20 => wire__crate__api__accounts__create_identity_impl(port, ptr, rust_vec_len, data_len),
        21 => wire__crate__api__create_whitenoise_config_impl(port, ptr, rust_vec_len, data_len),
        22 => wire__crate__api__relays__debug_relay_control_state_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        23 => wire__crate__api__account_groups__decline_account_group_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        25 => wire__crate__api__relay_defaults__default_relay_urls_parsed_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        26 => wire__crate__api__accounts__delete_account_key_package_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        27 => wire__crate__api__accounts__delete_account_key_packages_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        28 => wire__crate__api__accounts__delete_all_account_key_packages_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        29 => wire__crate__api__delete_all_data_impl(port, ptr, rust_vec_len, data_len),
        30 => wire__crate__api__groups__delete_chat_impl(port, ptr, rust_vec_len, data_len),
        31 => wire__crate__api__drafts__delete_draft_impl(port, ptr, rust_vec_len, data_len),
        32 => wire__crate__api__media_files__download_chat_media_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        33 => wire__crate__api__relays__ensure_all_subscriptions_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        35 => {
            wire__crate__api__accounts__export_account_nsec_impl(port, ptr, rust_vec_len, data_len)
        }
        36 => wire__crate__api__messages__fetch_aggregated_messages_for_group_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        37 => wire__crate__api__chat_list__fetch_archived_chat_list_snapshot_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        38 => wire__crate__api__chat_list__fetch_chat_list_snapshot_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        39 => wire__crate__api__zapstore__fetch_latest_zapstore_version_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        40 => {
            wire__crate__api__messages__fetch_message_by_id_impl(port, ptr, rust_vec_len, data_len)
        }
        41 => wire__crate__api__messages__fetch_messages_unread_with_minimum_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        42 => wire__crate__api__accounts__follow_user_impl(port, ptr, rust_vec_len, data_len),
        43 => wire__crate__api__accounts__get_account_impl(port, ptr, rust_vec_len, data_len),
        44 => wire__crate__api__account_groups__get_account_group_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        45 => wire__crate__api__accounts__get_accounts_impl(port, ptr, rust_vec_len, data_len),
        46 => wire__crate__api__get_app_settings_impl(port, ptr, rust_vec_len, data_len),
        47 => {
            wire__crate__api__mute_list__get_blocked_users_impl(port, ptr, rust_vec_len, data_len)
        }
        48 => wire__crate__api__chat_list__get_chat_list_impl(port, ptr, rust_vec_len, data_len),
        49 => {
            wire__crate__api__chat_summary__get_chat_summary_impl(port, ptr, rust_vec_len, data_len)
        }
        50 => wire__crate__api__utils__get_default_blossom_server_url_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        51 => wire__crate__api__account_groups__get_dm_group_with_peer_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        52 => wire__crate__api__groups__get_group_impl(port, ptr, rust_vec_len, data_len),
        53 => {
            wire__crate__api__groups__get_group_image_path_impl(port, ptr, rust_vec_len, data_len)
        }
        54 => {
            wire__crate__api__groups__get_group_information_impl(port, ptr, rust_vec_len, data_len)
        }
        55 => wire__crate__api__notifications__get_group_push_debug_info_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        56 => wire__crate__api__groups__get_groups_informations_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        57 => wire__crate__api__notifications__get_push_registration_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        58 => {
            wire__crate__api__groups__get_ratchet_tree_info_impl(port, ptr, rust_vec_len, data_len)
        }
        59 => wire__crate__api__users__get_user_impl(port, ptr, rust_vec_len, data_len),
        60 => wire__crate__api__groups__group_admins_impl(port, ptr, rust_vec_len, data_len),
        61 => wire__crate__api__groups__group_group_type_impl(port, ptr, rust_vec_len, data_len),
        62 => wire__crate__api__utils__group_id_from_string_impl(port, ptr, rust_vec_len, data_len),
        63 => wire__crate__api__utils__group_id_to_string_impl(port, ptr, rust_vec_len, data_len),
        64 => wire__crate__api__groups__group_is_direct_message_type_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        65 => wire__crate__api__groups__group_is_group_type_impl(port, ptr, rust_vec_len, data_len),
        66 => wire__crate__api__groups__group_members_impl(port, ptr, rust_vec_len, data_len),
        67 => wire__crate__api__groups__group_required_proposals_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        68 => wire__crate__api__groups__group_update_group_data_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        70 => wire__crate__api__initialize_whitenoise_impl(port, ptr, rust_vec_len, data_len),
        71 => wire__crate__api__accounts__is_following_user_impl(port, ptr, rust_vec_len, data_len),
        72 => wire__crate__api__mute_list__is_user_blocked_impl(port, ptr, rust_vec_len, data_len),
        85 => {
            wire__crate__api__groups__leave_and_delete_group_impl(port, ptr, rust_vec_len, data_len)
        }
        86 => wire__crate__api__groups__leave_group_impl(port, ptr, rust_vec_len, data_len),
        87 => wire__crate__api__drafts__load_draft_impl(port, ptr, rust_vec_len, data_len),
        88 => wire__crate__api__accounts__login_cancel_impl(port, ptr, rust_vec_len, data_len),
        89 => wire__crate__api__signer__login_external_signer_publish_default_relays_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        90 => wire__crate__api__signer__login_external_signer_start_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        91 => wire__crate__api__signer__login_external_signer_with_custom_relay_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        92 => wire__crate__api__accounts__login_publish_default_relays_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        93 => wire__crate__api__accounts__login_start_impl(port, ptr, rust_vec_len, data_len),
        94 => wire__crate__api__accounts__login_with_custom_relay_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        95 => wire__crate__api__accounts__logout_impl(port, ptr, rust_vec_len, data_len),
        96 => wire__crate__api__account_groups__mark_message_read_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        97 => wire__crate__api__chat_list__mute_chat_impl(port, ptr, rust_vec_len, data_len),
        99 => wire__crate__api__accounts__publish_account_key_package_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        100 => wire__crate__api__signer__register_external_signer_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        101 => wire__crate__api__reinitialize_whitenoise_impl(port, ptr, rust_vec_len, data_len),
        102 => wire__crate__api__relays__relay_type_inbox_impl(port, ptr, rust_vec_len, data_len),
        103 => {
            wire__crate__api__relays__relay_type_key_package_impl(port, ptr, rust_vec_len, data_len)
        }
        104 => wire__crate__api__relays__relay_type_nip65_impl(port, ptr, rust_vec_len, data_len),
        105 => {
            wire__crate__api__utils__relay_url_from_string_impl(port, ptr, rust_vec_len, data_len)
        }
        106 => {
            wire__crate__api__accounts__remove_account_relay_impl(port, ptr, rust_vec_len, data_len)
        }
        107 => wire__crate__api__groups__remove_members_from_group_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        108 => wire__crate__api__accounts__restore_default_relays_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        109 => wire__crate__api__lifecycle__resume_after_background_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        110 => wire__crate__api__messages__retry_message_publish_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        111 => wire__crate__api__drafts__save_draft_impl(port, ptr, rust_vec_len, data_len),
        112 => wire__crate__api__messages__search_messages_impl(port, ptr, rust_vec_len, data_len),
        113 => wire__crate__api__messages__search_messages_in_group_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        114 => wire__crate__api__user_search__search_users_impl(port, ptr, rust_vec_len, data_len),
        115 => wire__crate__api__groups__self_demote_impl(port, ptr, rust_vec_len, data_len),
        116 => {
            wire__crate__api__bug_report__send_bug_report_impl(port, ptr, rust_vec_len, data_len)
        }
        117 => wire__crate__api__messages__send_message_to_group_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        118 => {
            wire__crate__api__chat_list__set_chat_pin_order_impl(port, ptr, rust_vec_len, data_len)
        }
        119 => {
            wire__crate__api__utils__string_from_relay_url_impl(port, ptr, rust_vec_len, data_len)
        }
        120 => wire__crate__api__chat_list__subscribe_to_archived_chat_list_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        121 => wire__crate__api__chat_list__subscribe_to_chat_list_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        122 => wire__crate__api__messages__subscribe_to_group_messages_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        123 => wire__crate__api__group_state__subscribe_to_group_state_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        124 => wire__crate__api__notifications__subscribe_to_notifications_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        125 => {
            wire__crate__api__logs__subscribe_to_rust_logs_impl(port, ptr, rust_vec_len, data_len)
        }
        126 => wire__crate__api__users__subscribe_to_user_impl(port, ptr, rust_vec_len, data_len),
        127 => wire__crate__api__utils__tag_from_vec_impl(port, ptr, rust_vec_len, data_len),
        132 => {
            wire__crate__api__account_groups__unarchive_chat_impl(port, ptr, rust_vec_len, data_len)
        }
        133 => wire__crate__api__mute_list__unblock_user_impl(port, ptr, rust_vec_len, data_len),
        134 => wire__crate__api__accounts__unfollow_user_impl(port, ptr, rust_vec_len, data_len),
        135 => wire__crate__api__chat_list__unmute_chat_impl(port, ptr, rust_vec_len, data_len),
        136 => wire__crate__api__accounts__update_account_metadata_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        137 => wire__crate__api__update_language_impl(port, ptr, rust_vec_len, data_len),
        138 => wire__crate__api__accounts__update_notifications_enabled_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        139 => wire__crate__api__update_theme_mode_impl(port, ptr, rust_vec_len, data_len),
        140 => wire__crate__api__accounts__upload_account_profile_picture_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        141 => {
            wire__crate__api__media_files__upload_chat_media_impl(port, ptr, rust_vec_len, data_len)
        }
        142 => wire__crate__api__groups__upload_group_image_impl(port, ptr, rust_vec_len, data_len),
        143 => wire__crate__api__notifications__upsert_push_registration_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        144 => {
            wire__crate__api__users__user_has_key_package_impl(port, ptr, rust_vec_len, data_len)
        }
        145 => wire__crate__api__users__user_metadata_impl(port, ptr, rust_vec_len, data_len),
        146 => wire__crate__api__users__user_relays_impl(port, ptr, rust_vec_len, data_len),
        147 => wire__crate__api__groups__visible_groups_with_info_impl(
            port,
            ptr,
            rust_vec_len,
            data_len,
        ),
        _ => unreachable!(),
    }
}

fn pde_ffi_dispatcher_sync_impl(
    func_id: i32,
    ptr: flutter_rust_bridge::for_generated::PlatformGeneralizedUint8ListPtr,
    rust_vec_len: i32,
    data_len: i32,
) -> flutter_rust_bridge::for_generated::WireSyncRust2DartSse {
    // Codec=Pde (Serialization + dispatch), see doc to use other codecs
    match func_id {
        24 => {
            wire__crate__api__relay_defaults__default_relay_urls_impl(ptr, rust_vec_len, data_len)
        }
        34 => wire__crate__api__utils__event_id_to_nevent_uri_impl(ptr, rust_vec_len, data_len),
        69 => wire__crate__api__utils__hex_pubkey_from_npub_impl(ptr, rust_vec_len, data_len),
        73 => {
            wire__crate__api__utils__language_chinese_simplified_impl(ptr, rust_vec_len, data_len)
        }
        74 => {
            wire__crate__api__utils__language_chinese_traditional_impl(ptr, rust_vec_len, data_len)
        }
        75 => wire__crate__api__utils__language_english_impl(ptr, rust_vec_len, data_len),
        76 => wire__crate__api__utils__language_french_impl(ptr, rust_vec_len, data_len),
        77 => wire__crate__api__utils__language_german_impl(ptr, rust_vec_len, data_len),
        78 => wire__crate__api__utils__language_italian_impl(ptr, rust_vec_len, data_len),
        79 => wire__crate__api__utils__language_portuguese_impl(ptr, rust_vec_len, data_len),
        80 => wire__crate__api__utils__language_russian_impl(ptr, rust_vec_len, data_len),
        81 => wire__crate__api__utils__language_spanish_impl(ptr, rust_vec_len, data_len),
        82 => wire__crate__api__utils__language_system_impl(ptr, rust_vec_len, data_len),
        83 => wire__crate__api__utils__language_to_string_impl(ptr, rust_vec_len, data_len),
        84 => wire__crate__api__utils__language_turkish_impl(ptr, rust_vec_len, data_len),
        98 => wire__crate__api__utils__npub_from_hex_pubkey_impl(ptr, rust_vec_len, data_len),
        128 => wire__crate__api__utils__theme_mode_dark_impl(ptr, rust_vec_len, data_len),
        129 => wire__crate__api__utils__theme_mode_light_impl(ptr, rust_vec_len, data_len),
        130 => wire__crate__api__utils__theme_mode_system_impl(ptr, rust_vec_len, data_len),
        131 => wire__crate__api__utils__theme_mode_to_string_impl(ptr, rust_vec_len, data_len),
        _ => unreachable!(),
    }
}

// Section: rust2dart

// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for FrbWrapper<AppSettings> {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        flutter_rust_bridge::for_generated::rust_auto_opaque_encode::<_, MoiArc<_>>(self.0)
            .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive for FrbWrapper<AppSettings> {}

impl flutter_rust_bridge::IntoIntoDart<FrbWrapper<AppSettings>> for AppSettings {
    fn into_into_dart(self) -> FrbWrapper<AppSettings> {
        self.into()
    }
}

// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for FrbWrapper<DartSigner> {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        flutter_rust_bridge::for_generated::rust_auto_opaque_encode::<_, MoiArc<_>>(self.0)
            .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive for FrbWrapper<DartSigner> {}

impl flutter_rust_bridge::IntoIntoDart<FrbWrapper<DartSigner>> for DartSigner {
    fn into_into_dart(self) -> FrbWrapper<DartSigner> {
        self.into()
    }
}

// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for FrbWrapper<GroupId> {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        flutter_rust_bridge::for_generated::rust_auto_opaque_encode::<_, MoiArc<_>>(self.0)
            .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive for FrbWrapper<GroupId> {}

impl flutter_rust_bridge::IntoIntoDart<FrbWrapper<GroupId>> for GroupId {
    fn into_into_dart(self) -> FrbWrapper<GroupId> {
        self.into()
    }
}

// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for FrbWrapper<Language> {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        flutter_rust_bridge::for_generated::rust_auto_opaque_encode::<_, MoiArc<_>>(self.0)
            .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive for FrbWrapper<Language> {}

impl flutter_rust_bridge::IntoIntoDart<FrbWrapper<Language>> for Language {
    fn into_into_dart(self) -> FrbWrapper<Language> {
        self.into()
    }
}

// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for FrbWrapper<PublicKey> {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        flutter_rust_bridge::for_generated::rust_auto_opaque_encode::<_, MoiArc<_>>(self.0)
            .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive for FrbWrapper<PublicKey> {}

impl flutter_rust_bridge::IntoIntoDart<FrbWrapper<PublicKey>> for PublicKey {
    fn into_into_dart(self) -> FrbWrapper<PublicKey> {
        self.into()
    }
}

// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for FrbWrapper<RelayType> {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        flutter_rust_bridge::for_generated::rust_auto_opaque_encode::<_, MoiArc<_>>(self.0)
            .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive for FrbWrapper<RelayType> {}

impl flutter_rust_bridge::IntoIntoDart<FrbWrapper<RelayType>> for RelayType {
    fn into_into_dart(self) -> FrbWrapper<RelayType> {
        self.into()
    }
}

// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for FrbWrapper<RelayUrl> {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        flutter_rust_bridge::for_generated::rust_auto_opaque_encode::<_, MoiArc<_>>(self.0)
            .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive for FrbWrapper<RelayUrl> {}

impl flutter_rust_bridge::IntoIntoDart<FrbWrapper<RelayUrl>> for RelayUrl {
    fn into_into_dart(self) -> FrbWrapper<RelayUrl> {
        self.into()
    }
}

// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for FrbWrapper<Tag> {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        flutter_rust_bridge::for_generated::rust_auto_opaque_encode::<_, MoiArc<_>>(self.0)
            .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive for FrbWrapper<Tag> {}

impl flutter_rust_bridge::IntoIntoDart<FrbWrapper<Tag>> for Tag {
    fn into_into_dart(self) -> FrbWrapper<Tag> {
        self.into()
    }
}

// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for FrbWrapper<ThemeMode> {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        flutter_rust_bridge::for_generated::rust_auto_opaque_encode::<_, MoiArc<_>>(self.0)
            .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive for FrbWrapper<ThemeMode> {}

impl flutter_rust_bridge::IntoIntoDart<FrbWrapper<ThemeMode>> for ThemeMode {
    fn into_into_dart(self) -> FrbWrapper<ThemeMode> {
        self.into()
    }
}

// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::accounts::Account {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.pubkey.into_into_dart().into_dart(),
            self.account_type.into_into_dart().into_dart(),
            self.last_synced_at.into_into_dart().into_dart(),
            self.created_at.into_into_dart().into_dart(),
            self.updated_at.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive for crate::api::accounts::Account {}
impl flutter_rust_bridge::IntoIntoDart<crate::api::accounts::Account>
    for crate::api::accounts::Account
{
    fn into_into_dart(self) -> crate::api::accounts::Account {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::account_groups::AccountGroup {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.id.into_into_dart().into_dart(),
            self.account_pubkey.into_into_dart().into_dart(),
            self.mls_group_id.into_into_dart().into_dart(),
            self.user_confirmation.into_into_dart().into_dart(),
            self.welcomer_pubkey.into_into_dart().into_dart(),
            self.last_read_message_id.into_into_dart().into_dart(),
            self.pin_order.into_into_dart().into_dart(),
            self.archived_at.into_into_dart().into_dart(),
            self.created_at.into_into_dart().into_dart(),
            self.updated_at.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::account_groups::AccountGroup
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::account_groups::AccountGroup>
    for crate::api::account_groups::AccountGroup
{
    fn into_into_dart(self) -> crate::api::account_groups::AccountGroup {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::accounts::AccountSettings {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [self.notifications_enabled.into_into_dart().into_dart()].into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::accounts::AccountSettings
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::accounts::AccountSettings>
    for crate::api::accounts::AccountSettings
{
    fn into_into_dart(self) -> crate::api::accounts::AccountSettings {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::accounts::AccountType {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        match self {
            Self::Local => 0.into_dart(),
            Self::External => 1.into_dart(),
            _ => unreachable!(),
        }
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::accounts::AccountType
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::accounts::AccountType>
    for crate::api::accounts::AccountType
{
    fn into_into_dart(self) -> crate::api::accounts::AccountType {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::error::ApiError {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        match self {
            crate::api::error::ApiError::Whitenoise { message } => {
                [0.into_dart(), message.into_into_dart().into_dart()].into_dart()
            }
            crate::api::error::ApiError::DatabasePoolTimedOut { message } => {
                [1.into_dart(), message.into_into_dart().into_dart()].into_dart()
            }
            crate::api::error::ApiError::InvalidKey { message } => {
                [2.into_dart(), message.into_into_dart().into_dart()].into_dart()
            }
            crate::api::error::ApiError::NostrUrl { message } => {
                [3.into_dart(), message.into_into_dart().into_dart()].into_dart()
            }
            crate::api::error::ApiError::NostrTag { message } => {
                [4.into_dart(), message.into_into_dart().into_dart()].into_dart()
            }
            crate::api::error::ApiError::NostrEvent { message } => {
                [5.into_dart(), message.into_into_dart().into_dart()].into_dart()
            }
            crate::api::error::ApiError::NostrParse { message } => {
                [6.into_dart(), message.into_into_dart().into_dart()].into_dart()
            }
            crate::api::error::ApiError::NostrHex { message } => {
                [7.into_dart(), message.into_into_dart().into_dart()].into_dart()
            }
            crate::api::error::ApiError::LoginInvalidKeyFormat { message } => {
                [8.into_dart(), message.into_into_dart().into_dart()].into_dart()
            }
            crate::api::error::ApiError::LoginNoRelayConnections => [9.into_dart()].into_dart(),
            crate::api::error::ApiError::LoginTimeout { message } => {
                [10.into_dart(), message.into_into_dart().into_dart()].into_dart()
            }
            crate::api::error::ApiError::LoginNoLoginInProgress => [11.into_dart()].into_dart(),
            crate::api::error::ApiError::LoginInternal { message } => {
                [12.into_dart(), message.into_into_dart().into_dart()].into_dart()
            }
            crate::api::error::ApiError::LoginKeyringUnavailable { message } => {
                [13.into_dart(), message.into_into_dart().into_dart()].into_dart()
            }
            crate::api::error::ApiError::Other { message } => {
                [14.into_dart(), message.into_into_dart().into_dart()].into_dart()
            }
            _ => {
                unimplemented!("");
            }
        }
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive for crate::api::error::ApiError {}
impl flutter_rust_bridge::IntoIntoDart<crate::api::error::ApiError>
    for crate::api::error::ApiError
{
    fn into_into_dart(self) -> crate::api::error::ApiError {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::chat_list::ChatListStreamItem {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        match self {
            crate::api::chat_list::ChatListStreamItem::InitialSnapshot { items } => {
                [0.into_dart(), items.into_into_dart().into_dart()].into_dart()
            }
            crate::api::chat_list::ChatListStreamItem::Update { update } => {
                [1.into_dart(), update.into_into_dart().into_dart()].into_dart()
            }
            _ => {
                unimplemented!("");
            }
        }
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::chat_list::ChatListStreamItem
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::chat_list::ChatListStreamItem>
    for crate::api::chat_list::ChatListStreamItem
{
    fn into_into_dart(self) -> crate::api::chat_list::ChatListStreamItem {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::chat_list::ChatListUpdate {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.trigger.into_into_dart().into_dart(),
            self.item.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::chat_list::ChatListUpdate
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::chat_list::ChatListUpdate>
    for crate::api::chat_list::ChatListUpdate
{
    fn into_into_dart(self) -> crate::api::chat_list::ChatListUpdate {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::chat_list::ChatListUpdateTrigger {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        match self {
            Self::NewGroup => 0.into_dart(),
            Self::NewLastMessage => 1.into_dart(),
            Self::LastMessageDeleted => 2.into_dart(),
            Self::ChatArchiveChanged => 3.into_dart(),
            Self::RemovedFromGroup => 4.into_dart(),
            Self::ChatMuteChanged => 5.into_dart(),
            Self::LeftGroup => 6.into_dart(),
            Self::ChatCleared => 7.into_dart(),
            Self::ChatDeleted => 8.into_dart(),
            Self::UserBlockChanged => 9.into_dart(),
            Self::SnapshotRefresh => 10.into_dart(),
            _ => unreachable!(),
        }
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::chat_list::ChatListUpdateTrigger
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::chat_list::ChatListUpdateTrigger>
    for crate::api::chat_list::ChatListUpdateTrigger
{
    fn into_into_dart(self) -> crate::api::chat_list::ChatListUpdateTrigger {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::messages::ChatMessage {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.id.into_into_dart().into_dart(),
            self.pubkey.into_into_dart().into_dart(),
            self.content.into_into_dart().into_dart(),
            self.created_at.into_into_dart().into_dart(),
            self.tags.into_into_dart().into_dart(),
            self.is_reply.into_into_dart().into_dart(),
            self.reply_to_id.into_into_dart().into_dart(),
            self.is_deleted.into_into_dart().into_dart(),
            self.content_tokens.into_into_dart().into_dart(),
            self.reactions.into_into_dart().into_dart(),
            self.media_attachments.into_into_dart().into_dart(),
            self.kind.into_into_dart().into_dart(),
            self.delivery_status.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::messages::ChatMessage
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::messages::ChatMessage>
    for crate::api::messages::ChatMessage
{
    fn into_into_dart(self) -> crate::api::messages::ChatMessage {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::messages::ChatMessageSummary {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.mls_group_id.into_into_dart().into_dart(),
            self.author.into_into_dart().into_dart(),
            self.author_display_name.into_into_dart().into_dart(),
            self.content.into_into_dart().into_dart(),
            self.created_at.into_into_dart().into_dart(),
            self.media_attachment_count.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::messages::ChatMessageSummary
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::messages::ChatMessageSummary>
    for crate::api::messages::ChatMessageSummary
{
    fn into_into_dart(self) -> crate::api::messages::ChatMessageSummary {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::chat_list::ChatMuteDuration {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        match self {
            crate::api::chat_list::ChatMuteDuration::OneHour => [0.into_dart()].into_dart(),
            crate::api::chat_list::ChatMuteDuration::EightHours => [1.into_dart()].into_dart(),
            crate::api::chat_list::ChatMuteDuration::OneDay => [2.into_dart()].into_dart(),
            crate::api::chat_list::ChatMuteDuration::OneWeek => [3.into_dart()].into_dart(),
            crate::api::chat_list::ChatMuteDuration::Forever => [4.into_dart()].into_dart(),
            crate::api::chat_list::ChatMuteDuration::Custom { until } => {
                [5.into_dart(), until.into_into_dart().into_dart()].into_dart()
            }
            _ => {
                unimplemented!("");
            }
        }
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::chat_list::ChatMuteDuration
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::chat_list::ChatMuteDuration>
    for crate::api::chat_list::ChatMuteDuration
{
    fn into_into_dart(self) -> crate::api::chat_list::ChatMuteDuration {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::chat_summary::ChatSummary {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.mls_group_id.into_into_dart().into_dart(),
            self.name.into_into_dart().into_dart(),
            self.group_type.into_into_dart().into_dart(),
            self.created_at.into_into_dart().into_dart(),
            self.group_image_path.into_into_dart().into_dart(),
            self.group_image_url.into_into_dart().into_dart(),
            self.last_message.into_into_dart().into_dart(),
            self.pending_confirmation.into_into_dart().into_dart(),
            self.welcomer_pubkey.into_into_dart().into_dart(),
            self.archived_at.into_into_dart().into_dart(),
            self.removed_at.into_into_dart().into_dart(),
            self.self_removed.into_into_dart().into_dart(),
            self.unread_count.into_into_dart().into_dart(),
            self.pin_order.into_into_dart().into_dart(),
            self.dm_peer_pubkey.into_into_dart().into_dart(),
            self.muted_until.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::chat_summary::ChatSummary
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::chat_summary::ChatSummary>
    for crate::api::chat_summary::ChatSummary
{
    fn into_into_dart(self) -> crate::api::chat_summary::ChatSummary {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::messages::DeliveryStatus {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        match self {
            crate::api::messages::DeliveryStatus::Sending => [0.into_dart()].into_dart(),
            crate::api::messages::DeliveryStatus::Sent { relay_count } => {
                [1.into_dart(), relay_count.into_into_dart().into_dart()].into_dart()
            }
            crate::api::messages::DeliveryStatus::Failed { reason } => {
                [2.into_dart(), reason.into_into_dart().into_dart()].into_dart()
            }
            crate::api::messages::DeliveryStatus::Retried => [3.into_dart()].into_dart(),
            _ => {
                unimplemented!("");
            }
        }
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::messages::DeliveryStatus
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::messages::DeliveryStatus>
    for crate::api::messages::DeliveryStatus
{
    fn into_into_dart(self) -> crate::api::messages::DeliveryStatus {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::drafts::Draft {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.account_pubkey.into_into_dart().into_dart(),
            self.mls_group_id.into_into_dart().into_dart(),
            self.content.into_into_dart().into_dart(),
            self.reply_to_id.into_into_dart().into_dart(),
            self.media_attachments.into_into_dart().into_dart(),
            self.created_at.into_into_dart().into_dart(),
            self.updated_at.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive for crate::api::drafts::Draft {}
impl flutter_rust_bridge::IntoIntoDart<crate::api::drafts::Draft> for crate::api::drafts::Draft {
    fn into_into_dart(self) -> crate::api::drafts::Draft {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::messages::EmojiReaction {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.emoji.into_into_dart().into_dart(),
            self.count.into_into_dart().into_dart(),
            self.users.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::messages::EmojiReaction
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::messages::EmojiReaction>
    for crate::api::messages::EmojiReaction
{
    fn into_into_dart(self) -> crate::api::messages::EmojiReaction {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::media_files::FileMetadata {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.original_filename.into_into_dart().into_dart(),
            self.dimensions.into_into_dart().into_dart(),
            self.blurhash.into_into_dart().into_dart(),
            self.thumbhash.into_into_dart().into_dart(),
            self.duration_ms.into_into_dart().into_dart(),
            self.waveform.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::media_files::FileMetadata
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::media_files::FileMetadata>
    for crate::api::media_files::FileMetadata
{
    fn into_into_dart(self) -> crate::api::media_files::FileMetadata {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::accounts::FlutterEvent {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.id.into_into_dart().into_dart(),
            self.pubkey.into_into_dart().into_dart(),
            self.created_at.into_into_dart().into_dart(),
            self.kind.into_into_dart().into_dart(),
            self.tags.into_into_dart().into_dart(),
            self.content.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::accounts::FlutterEvent
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::accounts::FlutterEvent>
    for crate::api::accounts::FlutterEvent
{
    fn into_into_dart(self) -> crate::api::accounts::FlutterEvent {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::groups::FlutterGroupDataUpdate {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.name.into_into_dart().into_dart(),
            self.description.into_into_dart().into_dart(),
            self.relays.into_into_dart().into_dart(),
            self.admins.into_into_dart().into_dart(),
            self.image_key.into_into_dart().into_dart(),
            self.image_hash.into_into_dart().into_dart(),
            self.image_nonce.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::groups::FlutterGroupDataUpdate
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::groups::FlutterGroupDataUpdate>
    for crate::api::groups::FlutterGroupDataUpdate
{
    fn into_into_dart(self) -> crate::api::groups::FlutterGroupDataUpdate {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::metadata::FlutterMetadata {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.name.into_into_dart().into_dart(),
            self.display_name.into_into_dart().into_dart(),
            self.about.into_into_dart().into_dart(),
            self.picture.into_into_dart().into_dart(),
            self.banner.into_into_dart().into_dart(),
            self.website.into_into_dart().into_dart(),
            self.nip05.into_into_dart().into_dart(),
            self.lud06.into_into_dart().into_dart(),
            self.lud16.into_into_dart().into_dart(),
            self.custom.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::metadata::FlutterMetadata
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::metadata::FlutterMetadata>
    for crate::api::metadata::FlutterMetadata
{
    fn into_into_dart(self) -> crate::api::metadata::FlutterMetadata {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::groups::Group {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.mls_group_id.into_into_dart().into_dart(),
            self.nostr_group_id.into_into_dart().into_dart(),
            self.name.into_into_dart().into_dart(),
            self.description.into_into_dart().into_dart(),
            self.image_hash.into_into_dart().into_dart(),
            self.image_key.into_into_dart().into_dart(),
            self.admin_pubkeys.into_into_dart().into_dart(),
            self.last_message_id.into_into_dart().into_dart(),
            self.last_message_at.into_into_dart().into_dart(),
            self.epoch.into_into_dart().into_dart(),
            self.state.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive for crate::api::groups::Group {}
impl flutter_rust_bridge::IntoIntoDart<crate::api::groups::Group> for crate::api::groups::Group {
    fn into_into_dart(self) -> crate::api::groups::Group {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::groups::GroupInformation {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.mls_group_id.into_into_dart().into_dart(),
            self.group_type.into_into_dart().into_dart(),
            self.created_at.into_into_dart().into_dart(),
            self.updated_at.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::groups::GroupInformation
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::groups::GroupInformation>
    for crate::api::groups::GroupInformation
{
    fn into_into_dart(self) -> crate::api::groups::GroupInformation {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::notifications::GroupPushDebugInfo {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.total_token_count.into_into_dart().into_dart(),
            self.active_token_count.into_into_dart().into_dart(),
            self.stale_token_count.into_into_dart().into_dart(),
            self.missing_relay_hint_count.into_into_dart().into_dart(),
            self.last_token_list_updated_at.into_into_dart().into_dart(),
            self.local_registration.into_into_dart().into_dart(),
            self.tokens.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::notifications::GroupPushDebugInfo
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::notifications::GroupPushDebugInfo>
    for crate::api::notifications::GroupPushDebugInfo
{
    fn into_into_dart(self) -> crate::api::notifications::GroupPushDebugInfo {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::notifications::GroupPushTokenDebugEntry {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.member_pubkey.into_into_dart().into_dart(),
            self.leaf_index.into_into_dart().into_dart(),
            self.server_pubkey.into_into_dart().into_dart(),
            self.has_relay_hint.into_into_dart().into_dart(),
            self.active_leaf.into_into_dart().into_dart(),
            self.member_matches_active_leaf.into_into_dart().into_dart(),
            self.is_local_member.into_into_dart().into_dart(),
            self.updated_at.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::notifications::GroupPushTokenDebugEntry
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::notifications::GroupPushTokenDebugEntry>
    for crate::api::notifications::GroupPushTokenDebugEntry
{
    fn into_into_dart(self) -> crate::api::notifications::GroupPushTokenDebugEntry {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::groups::GroupState {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        match self {
            Self::Active => 0.into_dart(),
            Self::Inactive => 1.into_dart(),
            Self::Pending => 2.into_dart(),
            _ => unreachable!(),
        }
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::groups::GroupState
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::groups::GroupState>
    for crate::api::groups::GroupState
{
    fn into_into_dart(self) -> crate::api::groups::GroupState {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::group_state::GroupStateUpdate {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        match self {
            Self::LeftGroup => 0.into_dart(),
            Self::RemovedFromGroup => 1.into_dart(),
            _ => unreachable!(),
        }
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::group_state::GroupStateUpdate
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::group_state::GroupStateUpdate>
    for crate::api::group_state::GroupStateUpdate
{
    fn into_into_dart(self) -> crate::api::group_state::GroupStateUpdate {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::groups::GroupType {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        match self {
            Self::DirectMessage => 0.into_dart(),
            Self::Group => 1.into_dart(),
            _ => unreachable!(),
        }
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive for crate::api::groups::GroupType {}
impl flutter_rust_bridge::IntoIntoDart<crate::api::groups::GroupType>
    for crate::api::groups::GroupType
{
    fn into_into_dart(self) -> crate::api::groups::GroupType {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::groups::GroupWithInfoAndMembership {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.group.into_into_dart().into_dart(),
            self.info.into_into_dart().into_dart(),
            self.membership.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::groups::GroupWithInfoAndMembership
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::groups::GroupWithInfoAndMembership>
    for crate::api::groups::GroupWithInfoAndMembership
{
    fn into_into_dart(self) -> crate::api::groups::GroupWithInfoAndMembership {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::messages::HighlightSpan {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.start.into_into_dart().into_dart(),
            self.end.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::messages::HighlightSpan
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::messages::HighlightSpan>
    for crate::api::messages::HighlightSpan
{
    fn into_into_dart(self) -> crate::api::messages::HighlightSpan {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::users::KeyPackageStatus {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        match self {
            Self::Valid => 0.into_dart(),
            Self::NotFound => 1.into_dart(),
            Self::Incompatible => 2.into_dart(),
            _ => unreachable!(),
        }
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::users::KeyPackageStatus
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::users::KeyPackageStatus>
    for crate::api::users::KeyPackageStatus
{
    fn into_into_dart(self) -> crate::api::users::KeyPackageStatus {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::groups::LeafNodeInfo {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.index.into_into_dart().into_dart(),
            self.encryption_key.into_into_dart().into_dart(),
            self.signature_key.into_into_dart().into_dart(),
            self.credential_identity.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::groups::LeafNodeInfo
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::groups::LeafNodeInfo>
    for crate::api::groups::LeafNodeInfo
{
    fn into_into_dart(self) -> crate::api::groups::LeafNodeInfo {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::notifications::LocalPushRegistrationDebugInfo {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.registered.into_into_dart().into_dart(),
            self.shareable.into_into_dart().into_dart(),
            self.notifications_enabled.into_into_dart().into_dart(),
            self.local_leaf_index.into_into_dart().into_dart(),
            self.local_token_cached.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::notifications::LocalPushRegistrationDebugInfo
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::notifications::LocalPushRegistrationDebugInfo>
    for crate::api::notifications::LocalPushRegistrationDebugInfo
{
    fn into_into_dart(self) -> crate::api::notifications::LocalPushRegistrationDebugInfo {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::accounts::LoginResult {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.account.into_into_dart().into_dart(),
            self.status.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::accounts::LoginResult
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::accounts::LoginResult>
    for crate::api::accounts::LoginResult
{
    fn into_into_dart(self) -> crate::api::accounts::LoginResult {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::accounts::LoginStatus {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        match self {
            Self::Complete => 0.into_dart(),
            Self::NeedsRelayLists => 1.into_dart(),
            _ => unreachable!(),
        }
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::accounts::LoginStatus
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::accounts::LoginStatus>
    for crate::api::accounts::LoginStatus
{
    fn into_into_dart(self) -> crate::api::accounts::LoginStatus {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::markdown::MarkdownAlignment {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        match self {
            Self::None => 0.into_dart(),
            Self::Left => 1.into_dart(),
            Self::Center => 2.into_dart(),
            Self::Right => 3.into_dart(),
            _ => unreachable!(),
        }
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::markdown::MarkdownAlignment
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::markdown::MarkdownAlignment>
    for crate::api::markdown::MarkdownAlignment
{
    fn into_into_dart(self) -> crate::api::markdown::MarkdownAlignment {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::markdown::MarkdownAutolinkKind {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        match self {
            Self::Uri => 0.into_dart(),
            Self::Email => 1.into_dart(),
            _ => unreachable!(),
        }
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::markdown::MarkdownAutolinkKind
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::markdown::MarkdownAutolinkKind>
    for crate::api::markdown::MarkdownAutolinkKind
{
    fn into_into_dart(self) -> crate::api::markdown::MarkdownAutolinkKind {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::markdown::MarkdownBlock {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        match self {
            crate::api::markdown::MarkdownBlock::Paragraph { inlines } => {
                [0.into_dart(), inlines.into_into_dart().into_dart()].into_dart()
            }
            crate::api::markdown::MarkdownBlock::Heading { level, inlines } => [
                1.into_dart(),
                level.into_into_dart().into_dart(),
                inlines.into_into_dart().into_dart(),
            ]
            .into_dart(),
            crate::api::markdown::MarkdownBlock::ThematicBreak => [2.into_dart()].into_dart(),
            crate::api::markdown::MarkdownBlock::CodeBlock {
                kind,
                info,
                content,
            } => [
                3.into_dart(),
                kind.into_into_dart().into_dart(),
                info.into_into_dart().into_dart(),
                content.into_into_dart().into_dart(),
            ]
            .into_dart(),
            crate::api::markdown::MarkdownBlock::BlockQuote { blocks } => {
                [4.into_dart(), blocks.into_into_dart().into_dart()].into_dart()
            }
            crate::api::markdown::MarkdownBlock::List { kind, tight, items } => [
                5.into_dart(),
                kind.into_into_dart().into_dart(),
                tight.into_into_dart().into_dart(),
                items.into_into_dart().into_dart(),
            ]
            .into_dart(),
            crate::api::markdown::MarkdownBlock::Table {
                alignments,
                header,
                rows,
            } => [
                6.into_dart(),
                alignments.into_into_dart().into_dart(),
                header.into_into_dart().into_dart(),
                rows.into_into_dart().into_dart(),
            ]
            .into_dart(),
            crate::api::markdown::MarkdownBlock::MathBlock { content } => {
                [7.into_dart(), content.into_into_dart().into_dart()].into_dart()
            }
            _ => {
                unimplemented!("");
            }
        }
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::markdown::MarkdownBlock
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::markdown::MarkdownBlock>
    for crate::api::markdown::MarkdownBlock
{
    fn into_into_dart(self) -> crate::api::markdown::MarkdownBlock {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::markdown::MarkdownCodeBlockKind {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        match self {
            Self::Indented => 0.into_dart(),
            Self::Fenced => 1.into_dart(),
            _ => unreachable!(),
        }
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::markdown::MarkdownCodeBlockKind
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::markdown::MarkdownCodeBlockKind>
    for crate::api::markdown::MarkdownCodeBlockKind
{
    fn into_into_dart(self) -> crate::api::markdown::MarkdownCodeBlockKind {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::markdown::MarkdownDocument {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [self.blocks.into_into_dart().into_dart()].into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::markdown::MarkdownDocument
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::markdown::MarkdownDocument>
    for crate::api::markdown::MarkdownDocument
{
    fn into_into_dart(self) -> crate::api::markdown::MarkdownDocument {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::markdown::MarkdownInline {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        match self {
            crate::api::markdown::MarkdownInline::Text { content } => {
                [0.into_dart(), content.into_into_dart().into_dart()].into_dart()
            }
            crate::api::markdown::MarkdownInline::SoftBreak => [1.into_dart()].into_dart(),
            crate::api::markdown::MarkdownInline::HardBreak => [2.into_dart()].into_dart(),
            crate::api::markdown::MarkdownInline::Code { content } => {
                [3.into_dart(), content.into_into_dart().into_dart()].into_dart()
            }
            crate::api::markdown::MarkdownInline::Emph { children } => {
                [4.into_dart(), children.into_into_dart().into_dart()].into_dart()
            }
            crate::api::markdown::MarkdownInline::Strong { children } => {
                [5.into_dart(), children.into_into_dart().into_dart()].into_dart()
            }
            crate::api::markdown::MarkdownInline::Strikethrough { children } => {
                [6.into_dart(), children.into_into_dart().into_dart()].into_dart()
            }
            crate::api::markdown::MarkdownInline::Link {
                dest,
                title,
                children,
            } => [
                7.into_dart(),
                dest.into_into_dart().into_dart(),
                title.into_into_dart().into_dart(),
                children.into_into_dart().into_dart(),
            ]
            .into_dart(),
            crate::api::markdown::MarkdownInline::Image { dest, title, alt } => [
                8.into_dart(),
                dest.into_into_dart().into_dart(),
                title.into_into_dart().into_dart(),
                alt.into_into_dart().into_dart(),
            ]
            .into_dart(),
            crate::api::markdown::MarkdownInline::Autolink { url, kind } => [
                9.into_dart(),
                url.into_into_dart().into_dart(),
                kind.into_into_dart().into_dart(),
            ]
            .into_dart(),
            crate::api::markdown::MarkdownInline::Math { content } => {
                [10.into_dart(), content.into_into_dart().into_dart()].into_dart()
            }
            crate::api::markdown::MarkdownInline::NostrMention { entity } => {
                [11.into_dart(), entity.into_into_dart().into_dart()].into_dart()
            }
            crate::api::markdown::MarkdownInline::NostrUri { entity } => {
                [12.into_dart(), entity.into_into_dart().into_dart()].into_dart()
            }
            _ => {
                unimplemented!("");
            }
        }
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::markdown::MarkdownInline
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::markdown::MarkdownInline>
    for crate::api::markdown::MarkdownInline
{
    fn into_into_dart(self) -> crate::api::markdown::MarkdownInline {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::markdown::MarkdownListItem {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.blocks.into_into_dart().into_dart(),
            self.checked.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::markdown::MarkdownListItem
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::markdown::MarkdownListItem>
    for crate::api::markdown::MarkdownListItem
{
    fn into_into_dart(self) -> crate::api::markdown::MarkdownListItem {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::markdown::MarkdownListKind {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        match self {
            crate::api::markdown::MarkdownListKind::Bullet { marker } => {
                [0.into_dart(), marker.into_into_dart().into_dart()].into_dart()
            }
            crate::api::markdown::MarkdownListKind::Ordered { start, delimiter } => [
                1.into_dart(),
                start.into_into_dart().into_dart(),
                delimiter.into_into_dart().into_dart(),
            ]
            .into_dart(),
            _ => {
                unimplemented!("");
            }
        }
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::markdown::MarkdownListKind
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::markdown::MarkdownListKind>
    for crate::api::markdown::MarkdownListKind
{
    fn into_into_dart(self) -> crate::api::markdown::MarkdownListKind {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::markdown::MarkdownNostrEntity {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.hrp.into_into_dart().into_dart(),
            self.bech32.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::markdown::MarkdownNostrEntity
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::markdown::MarkdownNostrEntity>
    for crate::api::markdown::MarkdownNostrEntity
{
    fn into_into_dart(self) -> crate::api::markdown::MarkdownNostrEntity {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::markdown::MarkdownNostrHrp {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        match self {
            Self::Npub => 0.into_dart(),
            Self::Note => 1.into_dart(),
            Self::Nevent => 2.into_dart(),
            Self::Nprofile => 3.into_dart(),
            Self::Naddr => 4.into_dart(),
            Self::Nrelay => 5.into_dart(),
            _ => unreachable!(),
        }
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::markdown::MarkdownNostrHrp
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::markdown::MarkdownNostrHrp>
    for crate::api::markdown::MarkdownNostrHrp
{
    fn into_into_dart(self) -> crate::api::markdown::MarkdownNostrHrp {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::markdown::MarkdownTableCell {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [self.inlines.into_into_dart().into_dart()].into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::markdown::MarkdownTableCell
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::markdown::MarkdownTableCell>
    for crate::api::markdown::MarkdownTableCell
{
    fn into_into_dart(self) -> crate::api::markdown::MarkdownTableCell {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::user_search::MatchQuality {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        match self {
            Self::Exact => 0.into_dart(),
            Self::Prefix => 1.into_dart(),
            Self::Contains => 2.into_dart(),
            _ => unreachable!(),
        }
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::user_search::MatchQuality
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::user_search::MatchQuality>
    for crate::api::user_search::MatchQuality
{
    fn into_into_dart(self) -> crate::api::user_search::MatchQuality {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::user_search::MatchedField {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        match self {
            Self::Name => 0.into_dart(),
            Self::Nip05 => 1.into_dart(),
            Self::DisplayName => 2.into_dart(),
            Self::About => 3.into_dart(),
            _ => unreachable!(),
        }
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::user_search::MatchedField
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::user_search::MatchedField>
    for crate::api::user_search::MatchedField
{
    fn into_into_dart(self) -> crate::api::user_search::MatchedField {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::media_files::MediaFile {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.id.into_into_dart().into_dart(),
            self.mls_group_id.into_into_dart().into_dart(),
            self.account_pubkey.into_into_dart().into_dart(),
            self.file_path.into_into_dart().into_dart(),
            self.original_file_hash.into_into_dart().into_dart(),
            self.encrypted_file_hash.into_into_dart().into_dart(),
            self.mime_type.into_into_dart().into_dart(),
            self.media_type.into_into_dart().into_dart(),
            self.blossom_url.into_into_dart().into_dart(),
            self.nostr_key.into_into_dart().into_dart(),
            self.file_metadata.into_into_dart().into_dart(),
            self.created_at.into_into_dart().into_dart(),
            self.nonce.into_into_dart().into_dart(),
            self.scheme_version.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::media_files::MediaFile
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::media_files::MediaFile>
    for crate::api::media_files::MediaFile
{
    fn into_into_dart(self) -> crate::api::media_files::MediaFile {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::messages::MessageStreamItem {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        match self {
            crate::api::messages::MessageStreamItem::InitialSnapshot { messages } => {
                [0.into_dart(), messages.into_into_dart().into_dart()].into_dart()
            }
            crate::api::messages::MessageStreamItem::Update { update } => {
                [1.into_dart(), update.into_into_dart().into_dart()].into_dart()
            }
            _ => {
                unimplemented!("");
            }
        }
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::messages::MessageStreamItem
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::messages::MessageStreamItem>
    for crate::api::messages::MessageStreamItem
{
    fn into_into_dart(self) -> crate::api::messages::MessageStreamItem {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::messages::MessageUpdate {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.trigger.into_into_dart().into_dart(),
            self.message.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::messages::MessageUpdate
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::messages::MessageUpdate>
    for crate::api::messages::MessageUpdate
{
    fn into_into_dart(self) -> crate::api::messages::MessageUpdate {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::messages::MessageWithTokens {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.id.into_into_dart().into_dart(),
            self.pubkey.into_into_dart().into_dart(),
            self.kind.into_into_dart().into_dart(),
            self.created_at.into_into_dart().into_dart(),
            self.content.into_into_dart().into_dart(),
            self.tokens.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::messages::MessageWithTokens
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::messages::MessageWithTokens>
    for crate::api::messages::MessageWithTokens
{
    fn into_into_dart(self) -> crate::api::messages::MessageWithTokens {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::mute_list::MuteListEntry {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.account_pubkey.into_into_dart().into_dart(),
            self.muted_pubkey.into_into_dart().into_dart(),
            self.is_private.into_into_dart().into_dart(),
            self.created_at.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::mute_list::MuteListEntry
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::mute_list::MuteListEntry>
    for crate::api::mute_list::MuteListEntry
{
    fn into_into_dart(self) -> crate::api::mute_list::MuteListEntry {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::notifications::NotificationTrigger {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        match self {
            Self::NewMessage => 0.into_dart(),
            Self::GroupInvite => 1.into_dart(),
            _ => unreachable!(),
        }
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::notifications::NotificationTrigger
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::notifications::NotificationTrigger>
    for crate::api::notifications::NotificationTrigger
{
    fn into_into_dart(self) -> crate::api::notifications::NotificationTrigger {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::notifications::NotificationUpdate {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.trigger.into_into_dart().into_dart(),
            self.mls_group_id.into_into_dart().into_dart(),
            self.group_name.into_into_dart().into_dart(),
            self.is_dm.into_into_dart().into_dart(),
            self.receiver.into_into_dart().into_dart(),
            self.sender.into_into_dart().into_dart(),
            self.content.into_into_dart().into_dart(),
            self.timestamp.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::notifications::NotificationUpdate
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::notifications::NotificationUpdate>
    for crate::api::notifications::NotificationUpdate
{
    fn into_into_dart(self) -> crate::api::notifications::NotificationUpdate {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::notifications::NotificationUser {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.pubkey.into_into_dart().into_dart(),
            self.display_name.into_into_dart().into_dart(),
            self.picture_url.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::notifications::NotificationUser
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::notifications::NotificationUser>
    for crate::api::notifications::NotificationUser
{
    fn into_into_dart(self) -> crate::api::notifications::NotificationUser {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::notifications::PushPlatform {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        match self {
            Self::Apns => 0.into_dart(),
            Self::Fcm => 1.into_dart(),
            _ => unreachable!(),
        }
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::notifications::PushPlatform
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::notifications::PushPlatform>
    for crate::api::notifications::PushPlatform
{
    fn into_into_dart(self) -> crate::api::notifications::PushPlatform {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::notifications::PushRegistration {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.account_pubkey.into_into_dart().into_dart(),
            self.platform.into_into_dart().into_dart(),
            self.raw_token.into_into_dart().into_dart(),
            self.server_pubkey.into_into_dart().into_dart(),
            self.relay_hint.into_into_dart().into_dart(),
            self.created_at.into_into_dart().into_dart(),
            self.updated_at.into_into_dart().into_dart(),
            self.last_shared_at.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::notifications::PushRegistration
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::notifications::PushRegistration>
    for crate::api::notifications::PushRegistration
{
    fn into_into_dart(self) -> crate::api::notifications::PushRegistration {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::groups::RatchetTreeInfo {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.tree_hash.into_into_dart().into_dart(),
            self.serialized_tree.into_into_dart().into_dart(),
            self.leaf_nodes.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::groups::RatchetTreeInfo
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::groups::RatchetTreeInfo>
    for crate::api::groups::RatchetTreeInfo
{
    fn into_into_dart(self) -> crate::api::groups::RatchetTreeInfo {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::messages::ReactionSummary {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.by_emoji.into_into_dart().into_dart(),
            self.user_reactions.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::messages::ReactionSummary
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::messages::ReactionSummary>
    for crate::api::messages::ReactionSummary
{
    fn into_into_dart(self) -> crate::api::messages::ReactionSummary {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::relays::Relay {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.url.into_into_dart().into_dart(),
            self.created_at.into_into_dart().into_dart(),
            self.updated_at.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive for crate::api::relays::Relay {}
impl flutter_rust_bridge::IntoIntoDart<crate::api::relays::Relay> for crate::api::relays::Relay {
    fn into_into_dart(self) -> crate::api::relays::Relay {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::groups::RequiredProposal {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        match self {
            Self::SelfRemove => 0.into_dart(),
            Self::Unknown => 1.into_dart(),
            _ => unreachable!(),
        }
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::groups::RequiredProposal
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::groups::RequiredProposal>
    for crate::api::groups::RequiredProposal
{
    fn into_into_dart(self) -> crate::api::groups::RequiredProposal {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::messages::SearchResult {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.message.into_into_dart().into_dart(),
            self.mls_group_id.into_into_dart().into_dart(),
            self.highlight_spans.into_into_dart().into_dart(),
            self.position.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::messages::SearchResult
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::messages::SearchResult>
    for crate::api::messages::SearchResult
{
    fn into_into_dart(self) -> crate::api::messages::SearchResult {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::user_search::SearchUpdateTrigger {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        match self {
            crate::api::user_search::SearchUpdateTrigger::RadiusStarted { radius } => {
                [0.into_dart(), radius.into_into_dart().into_dart()].into_dart()
            }
            crate::api::user_search::SearchUpdateTrigger::ResultsFound => {
                [1.into_dart()].into_dart()
            }
            crate::api::user_search::SearchUpdateTrigger::RadiusCompleted {
                radius,
                total_pubkeys_searched,
            } => [
                2.into_dart(),
                radius.into_into_dart().into_dart(),
                total_pubkeys_searched.into_into_dart().into_dart(),
            ]
            .into_dart(),
            crate::api::user_search::SearchUpdateTrigger::RadiusTimeout { radius } => {
                [3.into_dart(), radius.into_into_dart().into_dart()].into_dart()
            }
            crate::api::user_search::SearchUpdateTrigger::SearchCompleted {
                final_radius,
                total_results,
            } => [
                4.into_dart(),
                final_radius.into_into_dart().into_dart(),
                total_results.into_into_dart().into_dart(),
            ]
            .into_dart(),
            crate::api::user_search::SearchUpdateTrigger::Error { message } => {
                [5.into_dart(), message.into_into_dart().into_dart()].into_dart()
            }
            _ => {
                unimplemented!("");
            }
        }
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::user_search::SearchUpdateTrigger
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::user_search::SearchUpdateTrigger>
    for crate::api::user_search::SearchUpdateTrigger
{
    fn into_into_dart(self) -> crate::api::user_search::SearchUpdateTrigger {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::messages::UpdateTrigger {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        match self {
            Self::NewMessage => 0.into_dart(),
            Self::ReactionAdded => 1.into_dart(),
            Self::ReactionRemoved => 2.into_dart(),
            Self::MessageDeleted => 3.into_dart(),
            Self::DeliveryStatusChanged => 4.into_dart(),
            _ => unreachable!(),
        }
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::messages::UpdateTrigger
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::messages::UpdateTrigger>
    for crate::api::messages::UpdateTrigger
{
    fn into_into_dart(self) -> crate::api::messages::UpdateTrigger {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::groups::UploadGroupImageResult {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.encrypted_hash.into_into_dart().into_dart(),
            self.image_key.into_into_dart().into_dart(),
            self.image_nonce.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::groups::UploadGroupImageResult
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::groups::UploadGroupImageResult>
    for crate::api::groups::UploadGroupImageResult
{
    fn into_into_dart(self) -> crate::api::groups::UploadGroupImageResult {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::users::User {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.pubkey.into_into_dart().into_dart(),
            self.metadata.into_into_dart().into_dart(),
            self.created_at.into_into_dart().into_dart(),
            self.updated_at.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive for crate::api::users::User {}
impl flutter_rust_bridge::IntoIntoDart<crate::api::users::User> for crate::api::users::User {
    fn into_into_dart(self) -> crate::api::users::User {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::messages::UserReaction {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.reaction_id.into_into_dart().into_dart(),
            self.user.into_into_dart().into_dart(),
            self.emoji.into_into_dart().into_dart(),
            self.created_at.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::messages::UserReaction
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::messages::UserReaction>
    for crate::api::messages::UserReaction
{
    fn into_into_dart(self) -> crate::api::messages::UserReaction {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::user_search::UserSearchResult {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.pubkey.into_into_dart().into_dart(),
            self.metadata.into_into_dart().into_dart(),
            self.radius.into_into_dart().into_dart(),
            self.match_quality.into_into_dart().into_dart(),
            self.best_field.into_into_dart().into_dart(),
            self.matched_fields.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::user_search::UserSearchResult
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::user_search::UserSearchResult>
    for crate::api::user_search::UserSearchResult
{
    fn into_into_dart(self) -> crate::api::user_search::UserSearchResult {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::user_search::UserSearchUpdate {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.trigger.into_into_dart().into_dart(),
            self.new_results.into_into_dart().into_dart(),
            self.total_result_count.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::user_search::UserSearchUpdate
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::user_search::UserSearchUpdate>
    for crate::api::user_search::UserSearchUpdate
{
    fn into_into_dart(self) -> crate::api::user_search::UserSearchUpdate {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::users::UserStreamItem {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        match self {
            crate::api::users::UserStreamItem::InitialSnapshot { user } => {
                [0.into_dart(), user.into_into_dart().into_dart()].into_dart()
            }
            crate::api::users::UserStreamItem::Update { update } => {
                [1.into_dart(), update.into_into_dart().into_dart()].into_dart()
            }
            _ => {
                unimplemented!("");
            }
        }
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::users::UserStreamItem
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::users::UserStreamItem>
    for crate::api::users::UserStreamItem
{
    fn into_into_dart(self) -> crate::api::users::UserStreamItem {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::users::UserUpdate {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.trigger.into_into_dart().into_dart(),
            self.user.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive for crate::api::users::UserUpdate {}
impl flutter_rust_bridge::IntoIntoDart<crate::api::users::UserUpdate>
    for crate::api::users::UserUpdate
{
    fn into_into_dart(self) -> crate::api::users::UserUpdate {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::users::UserUpdateTrigger {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        match self {
            Self::UserCreated => 0.into_dart(),
            Self::MetadataChanged => 1.into_dart(),
            Self::LocalMetadataChanged => 2.into_dart(),
            _ => unreachable!(),
        }
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive
    for crate::api::users::UserUpdateTrigger
{
}
impl flutter_rust_bridge::IntoIntoDart<crate::api::users::UserUpdateTrigger>
    for crate::api::users::UserUpdateTrigger
{
    fn into_into_dart(self) -> crate::api::users::UserUpdateTrigger {
        self
    }
}
// Codec=Dco (DartCObject based), see doc to use other codecs
impl flutter_rust_bridge::IntoDart for crate::api::WhitenoiseConfig {
    fn into_dart(self) -> flutter_rust_bridge::for_generated::DartAbi {
        [
            self.data_dir.into_into_dart().into_dart(),
            self.logs_dir.into_into_dart().into_dart(),
            self.default_relay_urls.into_into_dart().into_dart(),
        ]
        .into_dart()
    }
}
impl flutter_rust_bridge::for_generated::IntoDartExceptPrimitive for crate::api::WhitenoiseConfig {}
impl flutter_rust_bridge::IntoIntoDart<crate::api::WhitenoiseConfig>
    for crate::api::WhitenoiseConfig
{
    fn into_into_dart(self) -> crate::api::WhitenoiseConfig {
        self
    }
}

impl SseEncode for flutter_rust_bridge::for_generated::anyhow::Error {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <String>::sse_encode(format!("{:?}", self), serializer);
    }
}

impl SseEncode for AppSettings {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <RustOpaqueMoi<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<AppSettings>>>::sse_encode(flutter_rust_bridge::for_generated::rust_auto_opaque_encode::<_, MoiArc<_>>(self), serializer);
    }
}

impl SseEncode for DartSigner {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <RustOpaqueMoi<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<DartSigner>>>::sse_encode(flutter_rust_bridge::for_generated::rust_auto_opaque_encode::<_, MoiArc<_>>(self), serializer);
    }
}

impl SseEncode for GroupId {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <RustOpaqueMoi<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<GroupId>>>::sse_encode(flutter_rust_bridge::for_generated::rust_auto_opaque_encode::<_, MoiArc<_>>(self), serializer);
    }
}

impl SseEncode for Language {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <RustOpaqueMoi<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<Language>>>::sse_encode(flutter_rust_bridge::for_generated::rust_auto_opaque_encode::<_, MoiArc<_>>(self), serializer);
    }
}

impl SseEncode for PublicKey {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <RustOpaqueMoi<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<PublicKey>>>::sse_encode(flutter_rust_bridge::for_generated::rust_auto_opaque_encode::<_, MoiArc<_>>(self), serializer);
    }
}

impl SseEncode for RelayType {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <RustOpaqueMoi<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<RelayType>>>::sse_encode(flutter_rust_bridge::for_generated::rust_auto_opaque_encode::<_, MoiArc<_>>(self), serializer);
    }
}

impl SseEncode for RelayUrl {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <RustOpaqueMoi<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<RelayUrl>>>::sse_encode(flutter_rust_bridge::for_generated::rust_auto_opaque_encode::<_, MoiArc<_>>(self), serializer);
    }
}

impl SseEncode for Tag {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <RustOpaqueMoi<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<Tag>>>::sse_encode(
            flutter_rust_bridge::for_generated::rust_auto_opaque_encode::<_, MoiArc<_>>(self),
            serializer,
        );
    }
}

impl SseEncode for ThemeMode {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <RustOpaqueMoi<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<ThemeMode>>>::sse_encode(flutter_rust_bridge::for_generated::rust_auto_opaque_encode::<_, MoiArc<_>>(self), serializer);
    }
}

impl SseEncode for chrono::DateTime<chrono::Utc> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i64>::sse_encode(self.timestamp_micros(), serializer);
    }
}

impl SseEncode for flutter_rust_bridge::DartOpaque {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <usize>::sse_encode(self.encode(), serializer);
    }
}

impl SseEncode for std::collections::HashMap<String, String> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <Vec<(String, String)>>::sse_encode(self.into_iter().collect(), serializer);
    }
}

impl SseEncode
    for RustOpaqueMoi<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<AppSettings>>
{
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        let (ptr, size) = self.sse_encode_raw();
        <usize>::sse_encode(ptr, serializer);
        <i32>::sse_encode(size, serializer);
    }
}

impl SseEncode
    for RustOpaqueMoi<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<DartSigner>>
{
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        let (ptr, size) = self.sse_encode_raw();
        <usize>::sse_encode(ptr, serializer);
        <i32>::sse_encode(size, serializer);
    }
}

impl SseEncode for RustOpaqueMoi<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<GroupId>> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        let (ptr, size) = self.sse_encode_raw();
        <usize>::sse_encode(ptr, serializer);
        <i32>::sse_encode(size, serializer);
    }
}

impl SseEncode
    for RustOpaqueMoi<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<Language>>
{
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        let (ptr, size) = self.sse_encode_raw();
        <usize>::sse_encode(ptr, serializer);
        <i32>::sse_encode(size, serializer);
    }
}

impl SseEncode
    for RustOpaqueMoi<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<PublicKey>>
{
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        let (ptr, size) = self.sse_encode_raw();
        <usize>::sse_encode(ptr, serializer);
        <i32>::sse_encode(size, serializer);
    }
}

impl SseEncode
    for RustOpaqueMoi<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<RelayType>>
{
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        let (ptr, size) = self.sse_encode_raw();
        <usize>::sse_encode(ptr, serializer);
        <i32>::sse_encode(size, serializer);
    }
}

impl SseEncode
    for RustOpaqueMoi<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<RelayUrl>>
{
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        let (ptr, size) = self.sse_encode_raw();
        <usize>::sse_encode(ptr, serializer);
        <i32>::sse_encode(size, serializer);
    }
}

impl SseEncode for RustOpaqueMoi<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<Tag>> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        let (ptr, size) = self.sse_encode_raw();
        <usize>::sse_encode(ptr, serializer);
        <i32>::sse_encode(size, serializer);
    }
}

impl SseEncode
    for RustOpaqueMoi<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<ThemeMode>>
{
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        let (ptr, size) = self.sse_encode_raw();
        <usize>::sse_encode(ptr, serializer);
        <i32>::sse_encode(size, serializer);
    }
}

impl SseEncode for StreamSink<String, flutter_rust_bridge::for_generated::SseCodec> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        unimplemented!("")
    }
}

impl SseEncode
    for StreamSink<
        crate::api::chat_list::ChatListStreamItem,
        flutter_rust_bridge::for_generated::SseCodec,
    >
{
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        unimplemented!("")
    }
}

impl SseEncode
    for StreamSink<
        crate::api::group_state::GroupStateUpdate,
        flutter_rust_bridge::for_generated::SseCodec,
    >
{
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        unimplemented!("")
    }
}

impl SseEncode
    for StreamSink<
        crate::api::messages::MessageStreamItem,
        flutter_rust_bridge::for_generated::SseCodec,
    >
{
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        unimplemented!("")
    }
}

impl SseEncode
    for StreamSink<
        crate::api::notifications::NotificationUpdate,
        flutter_rust_bridge::for_generated::SseCodec,
    >
{
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        unimplemented!("")
    }
}

impl SseEncode
    for StreamSink<
        crate::api::user_search::UserSearchUpdate,
        flutter_rust_bridge::for_generated::SseCodec,
    >
{
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        unimplemented!("")
    }
}

impl SseEncode
    for StreamSink<crate::api::users::UserStreamItem, flutter_rust_bridge::for_generated::SseCodec>
{
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        unimplemented!("")
    }
}

impl SseEncode for String {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <Vec<u8>>::sse_encode(self.into_bytes(), serializer);
    }
}

impl SseEncode for crate::api::accounts::Account {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <String>::sse_encode(self.pubkey, serializer);
        <crate::api::accounts::AccountType>::sse_encode(self.account_type, serializer);
        <Option<chrono::DateTime<chrono::Utc>>>::sse_encode(self.last_synced_at, serializer);
        <chrono::DateTime<chrono::Utc>>::sse_encode(self.created_at, serializer);
        <chrono::DateTime<chrono::Utc>>::sse_encode(self.updated_at, serializer);
    }
}

impl SseEncode for crate::api::account_groups::AccountGroup {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <Option<i64>>::sse_encode(self.id, serializer);
        <String>::sse_encode(self.account_pubkey, serializer);
        <String>::sse_encode(self.mls_group_id, serializer);
        <Option<bool>>::sse_encode(self.user_confirmation, serializer);
        <Option<String>>::sse_encode(self.welcomer_pubkey, serializer);
        <Option<String>>::sse_encode(self.last_read_message_id, serializer);
        <Option<i64>>::sse_encode(self.pin_order, serializer);
        <Option<i64>>::sse_encode(self.archived_at, serializer);
        <i64>::sse_encode(self.created_at, serializer);
        <i64>::sse_encode(self.updated_at, serializer);
    }
}

impl SseEncode for crate::api::accounts::AccountSettings {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <bool>::sse_encode(self.notifications_enabled, serializer);
    }
}

impl SseEncode for crate::api::accounts::AccountType {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(
            match self {
                crate::api::accounts::AccountType::Local => 0,
                crate::api::accounts::AccountType::External => 1,
                _ => {
                    unimplemented!("");
                }
            },
            serializer,
        );
    }
}

impl SseEncode for crate::api::error::ApiError {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        match self {
            crate::api::error::ApiError::Whitenoise { message } => {
                <i32>::sse_encode(0, serializer);
                <String>::sse_encode(message, serializer);
            }
            crate::api::error::ApiError::DatabasePoolTimedOut { message } => {
                <i32>::sse_encode(1, serializer);
                <String>::sse_encode(message, serializer);
            }
            crate::api::error::ApiError::InvalidKey { message } => {
                <i32>::sse_encode(2, serializer);
                <String>::sse_encode(message, serializer);
            }
            crate::api::error::ApiError::NostrUrl { message } => {
                <i32>::sse_encode(3, serializer);
                <String>::sse_encode(message, serializer);
            }
            crate::api::error::ApiError::NostrTag { message } => {
                <i32>::sse_encode(4, serializer);
                <String>::sse_encode(message, serializer);
            }
            crate::api::error::ApiError::NostrEvent { message } => {
                <i32>::sse_encode(5, serializer);
                <String>::sse_encode(message, serializer);
            }
            crate::api::error::ApiError::NostrParse { message } => {
                <i32>::sse_encode(6, serializer);
                <String>::sse_encode(message, serializer);
            }
            crate::api::error::ApiError::NostrHex { message } => {
                <i32>::sse_encode(7, serializer);
                <String>::sse_encode(message, serializer);
            }
            crate::api::error::ApiError::LoginInvalidKeyFormat { message } => {
                <i32>::sse_encode(8, serializer);
                <String>::sse_encode(message, serializer);
            }
            crate::api::error::ApiError::LoginNoRelayConnections => {
                <i32>::sse_encode(9, serializer);
            }
            crate::api::error::ApiError::LoginTimeout { message } => {
                <i32>::sse_encode(10, serializer);
                <String>::sse_encode(message, serializer);
            }
            crate::api::error::ApiError::LoginNoLoginInProgress => {
                <i32>::sse_encode(11, serializer);
            }
            crate::api::error::ApiError::LoginInternal { message } => {
                <i32>::sse_encode(12, serializer);
                <String>::sse_encode(message, serializer);
            }
            crate::api::error::ApiError::LoginKeyringUnavailable { message } => {
                <i32>::sse_encode(13, serializer);
                <String>::sse_encode(message, serializer);
            }
            crate::api::error::ApiError::Other { message } => {
                <i32>::sse_encode(14, serializer);
                <String>::sse_encode(message, serializer);
            }
            _ => {
                unimplemented!("");
            }
        }
    }
}

impl SseEncode for bool {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        serializer.cursor.write_u8(self as _).unwrap();
    }
}

impl SseEncode for crate::api::chat_list::ChatListStreamItem {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        match self {
            crate::api::chat_list::ChatListStreamItem::InitialSnapshot { items } => {
                <i32>::sse_encode(0, serializer);
                <Vec<crate::api::chat_summary::ChatSummary>>::sse_encode(items, serializer);
            }
            crate::api::chat_list::ChatListStreamItem::Update { update } => {
                <i32>::sse_encode(1, serializer);
                <crate::api::chat_list::ChatListUpdate>::sse_encode(update, serializer);
            }
            _ => {
                unimplemented!("");
            }
        }
    }
}

impl SseEncode for crate::api::chat_list::ChatListUpdate {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <crate::api::chat_list::ChatListUpdateTrigger>::sse_encode(self.trigger, serializer);
        <crate::api::chat_summary::ChatSummary>::sse_encode(self.item, serializer);
    }
}

impl SseEncode for crate::api::chat_list::ChatListUpdateTrigger {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(
            match self {
                crate::api::chat_list::ChatListUpdateTrigger::NewGroup => 0,
                crate::api::chat_list::ChatListUpdateTrigger::NewLastMessage => 1,
                crate::api::chat_list::ChatListUpdateTrigger::LastMessageDeleted => 2,
                crate::api::chat_list::ChatListUpdateTrigger::ChatArchiveChanged => 3,
                crate::api::chat_list::ChatListUpdateTrigger::RemovedFromGroup => 4,
                crate::api::chat_list::ChatListUpdateTrigger::ChatMuteChanged => 5,
                crate::api::chat_list::ChatListUpdateTrigger::LeftGroup => 6,
                crate::api::chat_list::ChatListUpdateTrigger::ChatCleared => 7,
                crate::api::chat_list::ChatListUpdateTrigger::ChatDeleted => 8,
                crate::api::chat_list::ChatListUpdateTrigger::UserBlockChanged => 9,
                crate::api::chat_list::ChatListUpdateTrigger::SnapshotRefresh => 10,
                _ => {
                    unimplemented!("");
                }
            },
            serializer,
        );
    }
}

impl SseEncode for crate::api::messages::ChatMessage {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <String>::sse_encode(self.id, serializer);
        <String>::sse_encode(self.pubkey, serializer);
        <String>::sse_encode(self.content, serializer);
        <chrono::DateTime<chrono::Utc>>::sse_encode(self.created_at, serializer);
        <Vec<Vec<String>>>::sse_encode(self.tags, serializer);
        <bool>::sse_encode(self.is_reply, serializer);
        <Option<String>>::sse_encode(self.reply_to_id, serializer);
        <bool>::sse_encode(self.is_deleted, serializer);
        <crate::api::markdown::MarkdownDocument>::sse_encode(self.content_tokens, serializer);
        <crate::api::messages::ReactionSummary>::sse_encode(self.reactions, serializer);
        <Vec<crate::api::media_files::MediaFile>>::sse_encode(self.media_attachments, serializer);
        <u16>::sse_encode(self.kind, serializer);
        <Option<crate::api::messages::DeliveryStatus>>::sse_encode(
            self.delivery_status,
            serializer,
        );
    }
}

impl SseEncode for crate::api::messages::ChatMessageSummary {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <String>::sse_encode(self.mls_group_id, serializer);
        <String>::sse_encode(self.author, serializer);
        <Option<String>>::sse_encode(self.author_display_name, serializer);
        <String>::sse_encode(self.content, serializer);
        <chrono::DateTime<chrono::Utc>>::sse_encode(self.created_at, serializer);
        <u64>::sse_encode(self.media_attachment_count, serializer);
    }
}

impl SseEncode for crate::api::chat_list::ChatMuteDuration {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        match self {
            crate::api::chat_list::ChatMuteDuration::OneHour => {
                <i32>::sse_encode(0, serializer);
            }
            crate::api::chat_list::ChatMuteDuration::EightHours => {
                <i32>::sse_encode(1, serializer);
            }
            crate::api::chat_list::ChatMuteDuration::OneDay => {
                <i32>::sse_encode(2, serializer);
            }
            crate::api::chat_list::ChatMuteDuration::OneWeek => {
                <i32>::sse_encode(3, serializer);
            }
            crate::api::chat_list::ChatMuteDuration::Forever => {
                <i32>::sse_encode(4, serializer);
            }
            crate::api::chat_list::ChatMuteDuration::Custom { until } => {
                <i32>::sse_encode(5, serializer);
                <chrono::DateTime<chrono::Utc>>::sse_encode(until, serializer);
            }
            _ => {
                unimplemented!("");
            }
        }
    }
}

impl SseEncode for crate::api::chat_summary::ChatSummary {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <String>::sse_encode(self.mls_group_id, serializer);
        <Option<String>>::sse_encode(self.name, serializer);
        <crate::api::groups::GroupType>::sse_encode(self.group_type, serializer);
        <chrono::DateTime<chrono::Utc>>::sse_encode(self.created_at, serializer);
        <Option<String>>::sse_encode(self.group_image_path, serializer);
        <Option<String>>::sse_encode(self.group_image_url, serializer);
        <Option<crate::api::messages::ChatMessageSummary>>::sse_encode(
            self.last_message,
            serializer,
        );
        <bool>::sse_encode(self.pending_confirmation, serializer);
        <Option<String>>::sse_encode(self.welcomer_pubkey, serializer);
        <Option<chrono::DateTime<chrono::Utc>>>::sse_encode(self.archived_at, serializer);
        <Option<chrono::DateTime<chrono::Utc>>>::sse_encode(self.removed_at, serializer);
        <bool>::sse_encode(self.self_removed, serializer);
        <u64>::sse_encode(self.unread_count, serializer);
        <Option<i64>>::sse_encode(self.pin_order, serializer);
        <Option<String>>::sse_encode(self.dm_peer_pubkey, serializer);
        <Option<chrono::DateTime<chrono::Utc>>>::sse_encode(self.muted_until, serializer);
    }
}

impl SseEncode for crate::api::messages::DeliveryStatus {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        match self {
            crate::api::messages::DeliveryStatus::Sending => {
                <i32>::sse_encode(0, serializer);
            }
            crate::api::messages::DeliveryStatus::Sent { relay_count } => {
                <i32>::sse_encode(1, serializer);
                <u64>::sse_encode(relay_count, serializer);
            }
            crate::api::messages::DeliveryStatus::Failed { reason } => {
                <i32>::sse_encode(2, serializer);
                <String>::sse_encode(reason, serializer);
            }
            crate::api::messages::DeliveryStatus::Retried => {
                <i32>::sse_encode(3, serializer);
            }
            _ => {
                unimplemented!("");
            }
        }
    }
}

impl SseEncode for crate::api::drafts::Draft {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <String>::sse_encode(self.account_pubkey, serializer);
        <String>::sse_encode(self.mls_group_id, serializer);
        <String>::sse_encode(self.content, serializer);
        <Option<String>>::sse_encode(self.reply_to_id, serializer);
        <Vec<crate::api::media_files::MediaFile>>::sse_encode(self.media_attachments, serializer);
        <chrono::DateTime<chrono::Utc>>::sse_encode(self.created_at, serializer);
        <chrono::DateTime<chrono::Utc>>::sse_encode(self.updated_at, serializer);
    }
}

impl SseEncode for crate::api::messages::EmojiReaction {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <String>::sse_encode(self.emoji, serializer);
        <u64>::sse_encode(self.count, serializer);
        <Vec<String>>::sse_encode(self.users, serializer);
    }
}

impl SseEncode for crate::api::media_files::FileMetadata {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <Option<String>>::sse_encode(self.original_filename, serializer);
        <Option<String>>::sse_encode(self.dimensions, serializer);
        <Option<String>>::sse_encode(self.blurhash, serializer);
        <Option<String>>::sse_encode(self.thumbhash, serializer);
        <Option<u64>>::sse_encode(self.duration_ms, serializer);
        <Option<Vec<u8>>>::sse_encode(self.waveform, serializer);
    }
}

impl SseEncode for crate::api::accounts::FlutterEvent {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <String>::sse_encode(self.id, serializer);
        <String>::sse_encode(self.pubkey, serializer);
        <chrono::DateTime<chrono::Utc>>::sse_encode(self.created_at, serializer);
        <u16>::sse_encode(self.kind, serializer);
        <Vec<Vec<String>>>::sse_encode(self.tags, serializer);
        <String>::sse_encode(self.content, serializer);
    }
}

impl SseEncode for crate::api::groups::FlutterGroupDataUpdate {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <Option<String>>::sse_encode(self.name, serializer);
        <Option<String>>::sse_encode(self.description, serializer);
        <Option<Vec<String>>>::sse_encode(self.relays, serializer);
        <Option<Vec<String>>>::sse_encode(self.admins, serializer);
        <Option<[u8; 32]>>::sse_encode(self.image_key, serializer);
        <Option<[u8; 32]>>::sse_encode(self.image_hash, serializer);
        <Option<[u8; 12]>>::sse_encode(self.image_nonce, serializer);
    }
}

impl SseEncode for crate::api::metadata::FlutterMetadata {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <Option<String>>::sse_encode(self.name, serializer);
        <Option<String>>::sse_encode(self.display_name, serializer);
        <Option<String>>::sse_encode(self.about, serializer);
        <Option<String>>::sse_encode(self.picture, serializer);
        <Option<String>>::sse_encode(self.banner, serializer);
        <Option<String>>::sse_encode(self.website, serializer);
        <Option<String>>::sse_encode(self.nip05, serializer);
        <Option<String>>::sse_encode(self.lud06, serializer);
        <Option<String>>::sse_encode(self.lud16, serializer);
        <std::collections::HashMap<String, String>>::sse_encode(self.custom, serializer);
    }
}

impl SseEncode for crate::api::groups::Group {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <String>::sse_encode(self.mls_group_id, serializer);
        <String>::sse_encode(self.nostr_group_id, serializer);
        <String>::sse_encode(self.name, serializer);
        <String>::sse_encode(self.description, serializer);
        <Option<[u8; 32]>>::sse_encode(self.image_hash, serializer);
        <Option<[u8; 32]>>::sse_encode(self.image_key, serializer);
        <Vec<String>>::sse_encode(self.admin_pubkeys, serializer);
        <Option<String>>::sse_encode(self.last_message_id, serializer);
        <Option<chrono::DateTime<chrono::Utc>>>::sse_encode(self.last_message_at, serializer);
        <u64>::sse_encode(self.epoch, serializer);
        <crate::api::groups::GroupState>::sse_encode(self.state, serializer);
    }
}

impl SseEncode for crate::api::groups::GroupInformation {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <String>::sse_encode(self.mls_group_id, serializer);
        <crate::api::groups::GroupType>::sse_encode(self.group_type, serializer);
        <chrono::DateTime<chrono::Utc>>::sse_encode(self.created_at, serializer);
        <chrono::DateTime<chrono::Utc>>::sse_encode(self.updated_at, serializer);
    }
}

impl SseEncode for crate::api::notifications::GroupPushDebugInfo {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <u32>::sse_encode(self.total_token_count, serializer);
        <u32>::sse_encode(self.active_token_count, serializer);
        <u32>::sse_encode(self.stale_token_count, serializer);
        <u32>::sse_encode(self.missing_relay_hint_count, serializer);
        <Option<chrono::DateTime<chrono::Utc>>>::sse_encode(
            self.last_token_list_updated_at,
            serializer,
        );
        <crate::api::notifications::LocalPushRegistrationDebugInfo>::sse_encode(
            self.local_registration,
            serializer,
        );
        <Vec<crate::api::notifications::GroupPushTokenDebugEntry>>::sse_encode(
            self.tokens,
            serializer,
        );
    }
}

impl SseEncode for crate::api::notifications::GroupPushTokenDebugEntry {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <String>::sse_encode(self.member_pubkey, serializer);
        <u32>::sse_encode(self.leaf_index, serializer);
        <String>::sse_encode(self.server_pubkey, serializer);
        <bool>::sse_encode(self.has_relay_hint, serializer);
        <bool>::sse_encode(self.active_leaf, serializer);
        <bool>::sse_encode(self.member_matches_active_leaf, serializer);
        <bool>::sse_encode(self.is_local_member, serializer);
        <chrono::DateTime<chrono::Utc>>::sse_encode(self.updated_at, serializer);
    }
}

impl SseEncode for crate::api::groups::GroupState {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(
            match self {
                crate::api::groups::GroupState::Active => 0,
                crate::api::groups::GroupState::Inactive => 1,
                crate::api::groups::GroupState::Pending => 2,
                _ => {
                    unimplemented!("");
                }
            },
            serializer,
        );
    }
}

impl SseEncode for crate::api::group_state::GroupStateUpdate {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(
            match self {
                crate::api::group_state::GroupStateUpdate::LeftGroup => 0,
                crate::api::group_state::GroupStateUpdate::RemovedFromGroup => 1,
                _ => {
                    unimplemented!("");
                }
            },
            serializer,
        );
    }
}

impl SseEncode for crate::api::groups::GroupType {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(
            match self {
                crate::api::groups::GroupType::DirectMessage => 0,
                crate::api::groups::GroupType::Group => 1,
                _ => {
                    unimplemented!("");
                }
            },
            serializer,
        );
    }
}

impl SseEncode for crate::api::groups::GroupWithInfoAndMembership {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <crate::api::groups::Group>::sse_encode(self.group, serializer);
        <crate::api::groups::GroupInformation>::sse_encode(self.info, serializer);
        <crate::api::account_groups::AccountGroup>::sse_encode(self.membership, serializer);
    }
}

impl SseEncode for crate::api::messages::HighlightSpan {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.start, serializer);
        <i32>::sse_encode(self.end, serializer);
    }
}

impl SseEncode for i32 {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        serializer.cursor.write_i32::<NativeEndian>(self).unwrap();
    }
}

impl SseEncode for i64 {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        serializer.cursor.write_i64::<NativeEndian>(self).unwrap();
    }
}

impl SseEncode for isize {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        serializer
            .cursor
            .write_i64::<NativeEndian>(self as _)
            .unwrap();
    }
}

impl SseEncode for crate::api::users::KeyPackageStatus {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(
            match self {
                crate::api::users::KeyPackageStatus::Valid => 0,
                crate::api::users::KeyPackageStatus::NotFound => 1,
                crate::api::users::KeyPackageStatus::Incompatible => 2,
                _ => {
                    unimplemented!("");
                }
            },
            serializer,
        );
    }
}

impl SseEncode for crate::api::groups::LeafNodeInfo {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <u32>::sse_encode(self.index, serializer);
        <String>::sse_encode(self.encryption_key, serializer);
        <String>::sse_encode(self.signature_key, serializer);
        <String>::sse_encode(self.credential_identity, serializer);
    }
}

impl SseEncode for Vec<RelayUrl> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <RelayUrl>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<Tag> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <Tag>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<String> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <String>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<crate::api::accounts::Account> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <crate::api::accounts::Account>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<crate::api::messages::ChatMessage> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <crate::api::messages::ChatMessage>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<crate::api::chat_summary::ChatSummary> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <crate::api::chat_summary::ChatSummary>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<crate::api::messages::EmojiReaction> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <crate::api::messages::EmojiReaction>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<crate::api::accounts::FlutterEvent> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <crate::api::accounts::FlutterEvent>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<crate::api::groups::Group> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <crate::api::groups::Group>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<crate::api::groups::GroupInformation> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <crate::api::groups::GroupInformation>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<crate::api::notifications::GroupPushTokenDebugEntry> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <crate::api::notifications::GroupPushTokenDebugEntry>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<crate::api::groups::GroupWithInfoAndMembership> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <crate::api::groups::GroupWithInfoAndMembership>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<crate::api::messages::HighlightSpan> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <crate::api::messages::HighlightSpan>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<crate::api::groups::LeafNodeInfo> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <crate::api::groups::LeafNodeInfo>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<Vec<String>> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <Vec<String>>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<Vec<crate::api::markdown::MarkdownTableCell>> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <Vec<crate::api::markdown::MarkdownTableCell>>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<crate::api::markdown::MarkdownAlignment> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <crate::api::markdown::MarkdownAlignment>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<crate::api::markdown::MarkdownBlock> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <crate::api::markdown::MarkdownBlock>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<crate::api::markdown::MarkdownInline> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <crate::api::markdown::MarkdownInline>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<crate::api::markdown::MarkdownListItem> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <crate::api::markdown::MarkdownListItem>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<crate::api::markdown::MarkdownTableCell> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <crate::api::markdown::MarkdownTableCell>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<crate::api::user_search::MatchedField> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <crate::api::user_search::MatchedField>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<crate::api::media_files::MediaFile> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <crate::api::media_files::MediaFile>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<crate::api::mute_list::MuteListEntry> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <crate::api::mute_list::MuteListEntry>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<u8> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <u8>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<(String, String)> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <(String, String)>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<crate::api::relays::Relay> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <crate::api::relays::Relay>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<crate::api::groups::RequiredProposal> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <crate::api::groups::RequiredProposal>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<crate::api::messages::SearchResult> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <crate::api::messages::SearchResult>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<crate::api::users::User> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <crate::api::users::User>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<crate::api::messages::UserReaction> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <crate::api::messages::UserReaction>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for Vec<crate::api::user_search::UserSearchResult> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(self.len() as _, serializer);
        for item in self {
            <crate::api::user_search::UserSearchResult>::sse_encode(item, serializer);
        }
    }
}

impl SseEncode for crate::api::notifications::LocalPushRegistrationDebugInfo {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <bool>::sse_encode(self.registered, serializer);
        <bool>::sse_encode(self.shareable, serializer);
        <bool>::sse_encode(self.notifications_enabled, serializer);
        <Option<u32>>::sse_encode(self.local_leaf_index, serializer);
        <bool>::sse_encode(self.local_token_cached, serializer);
    }
}

impl SseEncode for crate::api::accounts::LoginResult {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <crate::api::accounts::Account>::sse_encode(self.account, serializer);
        <crate::api::accounts::LoginStatus>::sse_encode(self.status, serializer);
    }
}

impl SseEncode for crate::api::accounts::LoginStatus {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(
            match self {
                crate::api::accounts::LoginStatus::Complete => 0,
                crate::api::accounts::LoginStatus::NeedsRelayLists => 1,
                _ => {
                    unimplemented!("");
                }
            },
            serializer,
        );
    }
}

impl SseEncode for crate::api::markdown::MarkdownAlignment {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(
            match self {
                crate::api::markdown::MarkdownAlignment::None => 0,
                crate::api::markdown::MarkdownAlignment::Left => 1,
                crate::api::markdown::MarkdownAlignment::Center => 2,
                crate::api::markdown::MarkdownAlignment::Right => 3,
                _ => {
                    unimplemented!("");
                }
            },
            serializer,
        );
    }
}

impl SseEncode for crate::api::markdown::MarkdownAutolinkKind {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(
            match self {
                crate::api::markdown::MarkdownAutolinkKind::Uri => 0,
                crate::api::markdown::MarkdownAutolinkKind::Email => 1,
                _ => {
                    unimplemented!("");
                }
            },
            serializer,
        );
    }
}

impl SseEncode for crate::api::markdown::MarkdownBlock {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        match self {
            crate::api::markdown::MarkdownBlock::Paragraph { inlines } => {
                <i32>::sse_encode(0, serializer);
                <Vec<crate::api::markdown::MarkdownInline>>::sse_encode(inlines, serializer);
            }
            crate::api::markdown::MarkdownBlock::Heading { level, inlines } => {
                <i32>::sse_encode(1, serializer);
                <u8>::sse_encode(level, serializer);
                <Vec<crate::api::markdown::MarkdownInline>>::sse_encode(inlines, serializer);
            }
            crate::api::markdown::MarkdownBlock::ThematicBreak => {
                <i32>::sse_encode(2, serializer);
            }
            crate::api::markdown::MarkdownBlock::CodeBlock {
                kind,
                info,
                content,
            } => {
                <i32>::sse_encode(3, serializer);
                <crate::api::markdown::MarkdownCodeBlockKind>::sse_encode(kind, serializer);
                <String>::sse_encode(info, serializer);
                <String>::sse_encode(content, serializer);
            }
            crate::api::markdown::MarkdownBlock::BlockQuote { blocks } => {
                <i32>::sse_encode(4, serializer);
                <Vec<crate::api::markdown::MarkdownBlock>>::sse_encode(blocks, serializer);
            }
            crate::api::markdown::MarkdownBlock::List { kind, tight, items } => {
                <i32>::sse_encode(5, serializer);
                <crate::api::markdown::MarkdownListKind>::sse_encode(kind, serializer);
                <bool>::sse_encode(tight, serializer);
                <Vec<crate::api::markdown::MarkdownListItem>>::sse_encode(items, serializer);
            }
            crate::api::markdown::MarkdownBlock::Table {
                alignments,
                header,
                rows,
            } => {
                <i32>::sse_encode(6, serializer);
                <Vec<crate::api::markdown::MarkdownAlignment>>::sse_encode(alignments, serializer);
                <Vec<crate::api::markdown::MarkdownTableCell>>::sse_encode(header, serializer);
                <Vec<Vec<crate::api::markdown::MarkdownTableCell>>>::sse_encode(rows, serializer);
            }
            crate::api::markdown::MarkdownBlock::MathBlock { content } => {
                <i32>::sse_encode(7, serializer);
                <String>::sse_encode(content, serializer);
            }
            _ => {
                unimplemented!("");
            }
        }
    }
}

impl SseEncode for crate::api::markdown::MarkdownCodeBlockKind {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(
            match self {
                crate::api::markdown::MarkdownCodeBlockKind::Indented => 0,
                crate::api::markdown::MarkdownCodeBlockKind::Fenced => 1,
                _ => {
                    unimplemented!("");
                }
            },
            serializer,
        );
    }
}

impl SseEncode for crate::api::markdown::MarkdownDocument {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <Vec<crate::api::markdown::MarkdownBlock>>::sse_encode(self.blocks, serializer);
    }
}

impl SseEncode for crate::api::markdown::MarkdownInline {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        match self {
            crate::api::markdown::MarkdownInline::Text { content } => {
                <i32>::sse_encode(0, serializer);
                <String>::sse_encode(content, serializer);
            }
            crate::api::markdown::MarkdownInline::SoftBreak => {
                <i32>::sse_encode(1, serializer);
            }
            crate::api::markdown::MarkdownInline::HardBreak => {
                <i32>::sse_encode(2, serializer);
            }
            crate::api::markdown::MarkdownInline::Code { content } => {
                <i32>::sse_encode(3, serializer);
                <String>::sse_encode(content, serializer);
            }
            crate::api::markdown::MarkdownInline::Emph { children } => {
                <i32>::sse_encode(4, serializer);
                <Vec<crate::api::markdown::MarkdownInline>>::sse_encode(children, serializer);
            }
            crate::api::markdown::MarkdownInline::Strong { children } => {
                <i32>::sse_encode(5, serializer);
                <Vec<crate::api::markdown::MarkdownInline>>::sse_encode(children, serializer);
            }
            crate::api::markdown::MarkdownInline::Strikethrough { children } => {
                <i32>::sse_encode(6, serializer);
                <Vec<crate::api::markdown::MarkdownInline>>::sse_encode(children, serializer);
            }
            crate::api::markdown::MarkdownInline::Link {
                dest,
                title,
                children,
            } => {
                <i32>::sse_encode(7, serializer);
                <String>::sse_encode(dest, serializer);
                <Option<String>>::sse_encode(title, serializer);
                <Vec<crate::api::markdown::MarkdownInline>>::sse_encode(children, serializer);
            }
            crate::api::markdown::MarkdownInline::Image { dest, title, alt } => {
                <i32>::sse_encode(8, serializer);
                <String>::sse_encode(dest, serializer);
                <Option<String>>::sse_encode(title, serializer);
                <Vec<crate::api::markdown::MarkdownInline>>::sse_encode(alt, serializer);
            }
            crate::api::markdown::MarkdownInline::Autolink { url, kind } => {
                <i32>::sse_encode(9, serializer);
                <String>::sse_encode(url, serializer);
                <crate::api::markdown::MarkdownAutolinkKind>::sse_encode(kind, serializer);
            }
            crate::api::markdown::MarkdownInline::Math { content } => {
                <i32>::sse_encode(10, serializer);
                <String>::sse_encode(content, serializer);
            }
            crate::api::markdown::MarkdownInline::NostrMention { entity } => {
                <i32>::sse_encode(11, serializer);
                <crate::api::markdown::MarkdownNostrEntity>::sse_encode(entity, serializer);
            }
            crate::api::markdown::MarkdownInline::NostrUri { entity } => {
                <i32>::sse_encode(12, serializer);
                <crate::api::markdown::MarkdownNostrEntity>::sse_encode(entity, serializer);
            }
            _ => {
                unimplemented!("");
            }
        }
    }
}

impl SseEncode for crate::api::markdown::MarkdownListItem {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <Vec<crate::api::markdown::MarkdownBlock>>::sse_encode(self.blocks, serializer);
        <Option<bool>>::sse_encode(self.checked, serializer);
    }
}

impl SseEncode for crate::api::markdown::MarkdownListKind {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        match self {
            crate::api::markdown::MarkdownListKind::Bullet { marker } => {
                <i32>::sse_encode(0, serializer);
                <String>::sse_encode(marker, serializer);
            }
            crate::api::markdown::MarkdownListKind::Ordered { start, delimiter } => {
                <i32>::sse_encode(1, serializer);
                <u32>::sse_encode(start, serializer);
                <String>::sse_encode(delimiter, serializer);
            }
            _ => {
                unimplemented!("");
            }
        }
    }
}

impl SseEncode for crate::api::markdown::MarkdownNostrEntity {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <crate::api::markdown::MarkdownNostrHrp>::sse_encode(self.hrp, serializer);
        <String>::sse_encode(self.bech32, serializer);
    }
}

impl SseEncode for crate::api::markdown::MarkdownNostrHrp {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(
            match self {
                crate::api::markdown::MarkdownNostrHrp::Npub => 0,
                crate::api::markdown::MarkdownNostrHrp::Note => 1,
                crate::api::markdown::MarkdownNostrHrp::Nevent => 2,
                crate::api::markdown::MarkdownNostrHrp::Nprofile => 3,
                crate::api::markdown::MarkdownNostrHrp::Naddr => 4,
                crate::api::markdown::MarkdownNostrHrp::Nrelay => 5,
                _ => {
                    unimplemented!("");
                }
            },
            serializer,
        );
    }
}

impl SseEncode for crate::api::markdown::MarkdownTableCell {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <Vec<crate::api::markdown::MarkdownInline>>::sse_encode(self.inlines, serializer);
    }
}

impl SseEncode for crate::api::user_search::MatchQuality {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(
            match self {
                crate::api::user_search::MatchQuality::Exact => 0,
                crate::api::user_search::MatchQuality::Prefix => 1,
                crate::api::user_search::MatchQuality::Contains => 2,
                _ => {
                    unimplemented!("");
                }
            },
            serializer,
        );
    }
}

impl SseEncode for crate::api::user_search::MatchedField {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(
            match self {
                crate::api::user_search::MatchedField::Name => 0,
                crate::api::user_search::MatchedField::Nip05 => 1,
                crate::api::user_search::MatchedField::DisplayName => 2,
                crate::api::user_search::MatchedField::About => 3,
                _ => {
                    unimplemented!("");
                }
            },
            serializer,
        );
    }
}

impl SseEncode for crate::api::media_files::MediaFile {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <String>::sse_encode(self.id, serializer);
        <String>::sse_encode(self.mls_group_id, serializer);
        <String>::sse_encode(self.account_pubkey, serializer);
        <String>::sse_encode(self.file_path, serializer);
        <Option<String>>::sse_encode(self.original_file_hash, serializer);
        <String>::sse_encode(self.encrypted_file_hash, serializer);
        <String>::sse_encode(self.mime_type, serializer);
        <String>::sse_encode(self.media_type, serializer);
        <String>::sse_encode(self.blossom_url, serializer);
        <String>::sse_encode(self.nostr_key, serializer);
        <Option<crate::api::media_files::FileMetadata>>::sse_encode(self.file_metadata, serializer);
        <chrono::DateTime<chrono::Utc>>::sse_encode(self.created_at, serializer);
        <Option<String>>::sse_encode(self.nonce, serializer);
        <Option<String>>::sse_encode(self.scheme_version, serializer);
    }
}

impl SseEncode for crate::api::messages::MessageStreamItem {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        match self {
            crate::api::messages::MessageStreamItem::InitialSnapshot { messages } => {
                <i32>::sse_encode(0, serializer);
                <Vec<crate::api::messages::ChatMessage>>::sse_encode(messages, serializer);
            }
            crate::api::messages::MessageStreamItem::Update { update } => {
                <i32>::sse_encode(1, serializer);
                <crate::api::messages::MessageUpdate>::sse_encode(update, serializer);
            }
            _ => {
                unimplemented!("");
            }
        }
    }
}

impl SseEncode for crate::api::messages::MessageUpdate {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <crate::api::messages::UpdateTrigger>::sse_encode(self.trigger, serializer);
        <crate::api::messages::ChatMessage>::sse_encode(self.message, serializer);
    }
}

impl SseEncode for crate::api::messages::MessageWithTokens {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <String>::sse_encode(self.id, serializer);
        <String>::sse_encode(self.pubkey, serializer);
        <u16>::sse_encode(self.kind, serializer);
        <chrono::DateTime<chrono::Utc>>::sse_encode(self.created_at, serializer);
        <Option<String>>::sse_encode(self.content, serializer);
        <crate::api::markdown::MarkdownDocument>::sse_encode(self.tokens, serializer);
    }
}

impl SseEncode for crate::api::mute_list::MuteListEntry {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <String>::sse_encode(self.account_pubkey, serializer);
        <String>::sse_encode(self.muted_pubkey, serializer);
        <bool>::sse_encode(self.is_private, serializer);
        <chrono::DateTime<chrono::Utc>>::sse_encode(self.created_at, serializer);
    }
}

impl SseEncode for crate::api::notifications::NotificationTrigger {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(
            match self {
                crate::api::notifications::NotificationTrigger::NewMessage => 0,
                crate::api::notifications::NotificationTrigger::GroupInvite => 1,
                _ => {
                    unimplemented!("");
                }
            },
            serializer,
        );
    }
}

impl SseEncode for crate::api::notifications::NotificationUpdate {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <crate::api::notifications::NotificationTrigger>::sse_encode(self.trigger, serializer);
        <String>::sse_encode(self.mls_group_id, serializer);
        <Option<String>>::sse_encode(self.group_name, serializer);
        <bool>::sse_encode(self.is_dm, serializer);
        <crate::api::notifications::NotificationUser>::sse_encode(self.receiver, serializer);
        <crate::api::notifications::NotificationUser>::sse_encode(self.sender, serializer);
        <String>::sse_encode(self.content, serializer);
        <chrono::DateTime<chrono::Utc>>::sse_encode(self.timestamp, serializer);
    }
}

impl SseEncode for crate::api::notifications::NotificationUser {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <String>::sse_encode(self.pubkey, serializer);
        <Option<String>>::sse_encode(self.display_name, serializer);
        <Option<String>>::sse_encode(self.picture_url, serializer);
    }
}

impl SseEncode for Option<String> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <bool>::sse_encode(self.is_some(), serializer);
        if let Some(value) = self {
            <String>::sse_encode(value, serializer);
        }
    }
}

impl SseEncode for Option<chrono::DateTime<chrono::Utc>> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <bool>::sse_encode(self.is_some(), serializer);
        if let Some(value) = self {
            <chrono::DateTime<chrono::Utc>>::sse_encode(value, serializer);
        }
    }
}

impl SseEncode for Option<bool> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <bool>::sse_encode(self.is_some(), serializer);
        if let Some(value) = self {
            <bool>::sse_encode(value, serializer);
        }
    }
}

impl SseEncode for Option<crate::api::messages::ChatMessage> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <bool>::sse_encode(self.is_some(), serializer);
        if let Some(value) = self {
            <crate::api::messages::ChatMessage>::sse_encode(value, serializer);
        }
    }
}

impl SseEncode for Option<crate::api::messages::ChatMessageSummary> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <bool>::sse_encode(self.is_some(), serializer);
        if let Some(value) = self {
            <crate::api::messages::ChatMessageSummary>::sse_encode(value, serializer);
        }
    }
}

impl SseEncode for Option<crate::api::messages::DeliveryStatus> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <bool>::sse_encode(self.is_some(), serializer);
        if let Some(value) = self {
            <crate::api::messages::DeliveryStatus>::sse_encode(value, serializer);
        }
    }
}

impl SseEncode for Option<crate::api::drafts::Draft> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <bool>::sse_encode(self.is_some(), serializer);
        if let Some(value) = self {
            <crate::api::drafts::Draft>::sse_encode(value, serializer);
        }
    }
}

impl SseEncode for Option<crate::api::media_files::FileMetadata> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <bool>::sse_encode(self.is_some(), serializer);
        if let Some(value) = self {
            <crate::api::media_files::FileMetadata>::sse_encode(value, serializer);
        }
    }
}

impl SseEncode for Option<crate::api::accounts::FlutterEvent> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <bool>::sse_encode(self.is_some(), serializer);
        if let Some(value) = self {
            <crate::api::accounts::FlutterEvent>::sse_encode(value, serializer);
        }
    }
}

impl SseEncode for Option<i64> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <bool>::sse_encode(self.is_some(), serializer);
        if let Some(value) = self {
            <i64>::sse_encode(value, serializer);
        }
    }
}

impl SseEncode for Option<crate::api::notifications::PushRegistration> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <bool>::sse_encode(self.is_some(), serializer);
        if let Some(value) = self {
            <crate::api::notifications::PushRegistration>::sse_encode(value, serializer);
        }
    }
}

impl SseEncode for Option<u32> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <bool>::sse_encode(self.is_some(), serializer);
        if let Some(value) = self {
            <u32>::sse_encode(value, serializer);
        }
    }
}

impl SseEncode for Option<u64> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <bool>::sse_encode(self.is_some(), serializer);
        if let Some(value) = self {
            <u64>::sse_encode(value, serializer);
        }
    }
}

impl SseEncode for Option<Vec<Tag>> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <bool>::sse_encode(self.is_some(), serializer);
        if let Some(value) = self {
            <Vec<Tag>>::sse_encode(value, serializer);
        }
    }
}

impl SseEncode for Option<Vec<String>> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <bool>::sse_encode(self.is_some(), serializer);
        if let Some(value) = self {
            <Vec<String>>::sse_encode(value, serializer);
        }
    }
}

impl SseEncode for Option<Vec<u8>> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <bool>::sse_encode(self.is_some(), serializer);
        if let Some(value) = self {
            <Vec<u8>>::sse_encode(value, serializer);
        }
    }
}

impl SseEncode for Option<[u8; 12]> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <bool>::sse_encode(self.is_some(), serializer);
        if let Some(value) = self {
            <[u8; 12]>::sse_encode(value, serializer);
        }
    }
}

impl SseEncode for Option<[u8; 32]> {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <bool>::sse_encode(self.is_some(), serializer);
        if let Some(value) = self {
            <[u8; 32]>::sse_encode(value, serializer);
        }
    }
}

impl SseEncode for crate::api::notifications::PushPlatform {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(
            match self {
                crate::api::notifications::PushPlatform::Apns => 0,
                crate::api::notifications::PushPlatform::Fcm => 1,
                _ => {
                    unimplemented!("");
                }
            },
            serializer,
        );
    }
}

impl SseEncode for crate::api::notifications::PushRegistration {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <String>::sse_encode(self.account_pubkey, serializer);
        <crate::api::notifications::PushPlatform>::sse_encode(self.platform, serializer);
        <String>::sse_encode(self.raw_token, serializer);
        <String>::sse_encode(self.server_pubkey, serializer);
        <Option<String>>::sse_encode(self.relay_hint, serializer);
        <chrono::DateTime<chrono::Utc>>::sse_encode(self.created_at, serializer);
        <chrono::DateTime<chrono::Utc>>::sse_encode(self.updated_at, serializer);
        <Option<chrono::DateTime<chrono::Utc>>>::sse_encode(self.last_shared_at, serializer);
    }
}

impl SseEncode for crate::api::groups::RatchetTreeInfo {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <String>::sse_encode(self.tree_hash, serializer);
        <String>::sse_encode(self.serialized_tree, serializer);
        <Vec<crate::api::groups::LeafNodeInfo>>::sse_encode(self.leaf_nodes, serializer);
    }
}

impl SseEncode for crate::api::messages::ReactionSummary {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <Vec<crate::api::messages::EmojiReaction>>::sse_encode(self.by_emoji, serializer);
        <Vec<crate::api::messages::UserReaction>>::sse_encode(self.user_reactions, serializer);
    }
}

impl SseEncode for (String, String) {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <String>::sse_encode(self.0, serializer);
        <String>::sse_encode(self.1, serializer);
    }
}

impl SseEncode for crate::api::relays::Relay {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <String>::sse_encode(self.url, serializer);
        <chrono::DateTime<chrono::Utc>>::sse_encode(self.created_at, serializer);
        <chrono::DateTime<chrono::Utc>>::sse_encode(self.updated_at, serializer);
    }
}

impl SseEncode for crate::api::groups::RequiredProposal {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(
            match self {
                crate::api::groups::RequiredProposal::SelfRemove => 0,
                crate::api::groups::RequiredProposal::Unknown => 1,
                _ => {
                    unimplemented!("");
                }
            },
            serializer,
        );
    }
}

impl SseEncode for crate::api::messages::SearchResult {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <crate::api::messages::ChatMessage>::sse_encode(self.message, serializer);
        <String>::sse_encode(self.mls_group_id, serializer);
        <Vec<crate::api::messages::HighlightSpan>>::sse_encode(self.highlight_spans, serializer);
        <u64>::sse_encode(self.position, serializer);
    }
}

impl SseEncode for crate::api::user_search::SearchUpdateTrigger {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        match self {
            crate::api::user_search::SearchUpdateTrigger::RadiusStarted { radius } => {
                <i32>::sse_encode(0, serializer);
                <u8>::sse_encode(radius, serializer);
            }
            crate::api::user_search::SearchUpdateTrigger::ResultsFound => {
                <i32>::sse_encode(1, serializer);
            }
            crate::api::user_search::SearchUpdateTrigger::RadiusCompleted {
                radius,
                total_pubkeys_searched,
            } => {
                <i32>::sse_encode(2, serializer);
                <u8>::sse_encode(radius, serializer);
                <u64>::sse_encode(total_pubkeys_searched, serializer);
            }
            crate::api::user_search::SearchUpdateTrigger::RadiusTimeout { radius } => {
                <i32>::sse_encode(3, serializer);
                <u8>::sse_encode(radius, serializer);
            }
            crate::api::user_search::SearchUpdateTrigger::SearchCompleted {
                final_radius,
                total_results,
            } => {
                <i32>::sse_encode(4, serializer);
                <u8>::sse_encode(final_radius, serializer);
                <u64>::sse_encode(total_results, serializer);
            }
            crate::api::user_search::SearchUpdateTrigger::Error { message } => {
                <i32>::sse_encode(5, serializer);
                <String>::sse_encode(message, serializer);
            }
            _ => {
                unimplemented!("");
            }
        }
    }
}

impl SseEncode for u16 {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        serializer.cursor.write_u16::<NativeEndian>(self).unwrap();
    }
}

impl SseEncode for u32 {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        serializer.cursor.write_u32::<NativeEndian>(self).unwrap();
    }
}

impl SseEncode for u64 {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        serializer.cursor.write_u64::<NativeEndian>(self).unwrap();
    }
}

impl SseEncode for u8 {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        serializer.cursor.write_u8(self).unwrap();
    }
}

impl SseEncode for [u8; 12] {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <Vec<u8>>::sse_encode(
            {
                let boxed: Box<[_]> = Box::new(self);
                boxed.into_vec()
            },
            serializer,
        );
    }
}

impl SseEncode for [u8; 32] {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <Vec<u8>>::sse_encode(
            {
                let boxed: Box<[_]> = Box::new(self);
                boxed.into_vec()
            },
            serializer,
        );
    }
}

impl SseEncode for () {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {}
}

impl SseEncode for crate::api::messages::UpdateTrigger {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(
            match self {
                crate::api::messages::UpdateTrigger::NewMessage => 0,
                crate::api::messages::UpdateTrigger::ReactionAdded => 1,
                crate::api::messages::UpdateTrigger::ReactionRemoved => 2,
                crate::api::messages::UpdateTrigger::MessageDeleted => 3,
                crate::api::messages::UpdateTrigger::DeliveryStatusChanged => 4,
                _ => {
                    unimplemented!("");
                }
            },
            serializer,
        );
    }
}

impl SseEncode for crate::api::groups::UploadGroupImageResult {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <[u8; 32]>::sse_encode(self.encrypted_hash, serializer);
        <[u8; 32]>::sse_encode(self.image_key, serializer);
        <[u8; 12]>::sse_encode(self.image_nonce, serializer);
    }
}

impl SseEncode for crate::api::users::User {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <String>::sse_encode(self.pubkey, serializer);
        <crate::api::metadata::FlutterMetadata>::sse_encode(self.metadata, serializer);
        <chrono::DateTime<chrono::Utc>>::sse_encode(self.created_at, serializer);
        <chrono::DateTime<chrono::Utc>>::sse_encode(self.updated_at, serializer);
    }
}

impl SseEncode for crate::api::messages::UserReaction {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <String>::sse_encode(self.reaction_id, serializer);
        <String>::sse_encode(self.user, serializer);
        <String>::sse_encode(self.emoji, serializer);
        <chrono::DateTime<chrono::Utc>>::sse_encode(self.created_at, serializer);
    }
}

impl SseEncode for crate::api::user_search::UserSearchResult {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <String>::sse_encode(self.pubkey, serializer);
        <crate::api::metadata::FlutterMetadata>::sse_encode(self.metadata, serializer);
        <u8>::sse_encode(self.radius, serializer);
        <crate::api::user_search::MatchQuality>::sse_encode(self.match_quality, serializer);
        <crate::api::user_search::MatchedField>::sse_encode(self.best_field, serializer);
        <Vec<crate::api::user_search::MatchedField>>::sse_encode(self.matched_fields, serializer);
    }
}

impl SseEncode for crate::api::user_search::UserSearchUpdate {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <crate::api::user_search::SearchUpdateTrigger>::sse_encode(self.trigger, serializer);
        <Vec<crate::api::user_search::UserSearchResult>>::sse_encode(self.new_results, serializer);
        <u64>::sse_encode(self.total_result_count, serializer);
    }
}

impl SseEncode for crate::api::users::UserStreamItem {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        match self {
            crate::api::users::UserStreamItem::InitialSnapshot { user } => {
                <i32>::sse_encode(0, serializer);
                <crate::api::users::User>::sse_encode(user, serializer);
            }
            crate::api::users::UserStreamItem::Update { update } => {
                <i32>::sse_encode(1, serializer);
                <crate::api::users::UserUpdate>::sse_encode(update, serializer);
            }
            _ => {
                unimplemented!("");
            }
        }
    }
}

impl SseEncode for crate::api::users::UserUpdate {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <crate::api::users::UserUpdateTrigger>::sse_encode(self.trigger, serializer);
        <crate::api::users::User>::sse_encode(self.user, serializer);
    }
}

impl SseEncode for crate::api::users::UserUpdateTrigger {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <i32>::sse_encode(
            match self {
                crate::api::users::UserUpdateTrigger::UserCreated => 0,
                crate::api::users::UserUpdateTrigger::MetadataChanged => 1,
                crate::api::users::UserUpdateTrigger::LocalMetadataChanged => 2,
                _ => {
                    unimplemented!("");
                }
            },
            serializer,
        );
    }
}

impl SseEncode for usize {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        serializer
            .cursor
            .write_u64::<NativeEndian>(self as _)
            .unwrap();
    }
}

impl SseEncode for crate::api::WhitenoiseConfig {
    // Codec=Sse (Serialization based), see doc to use other codecs
    fn sse_encode(self, serializer: &mut flutter_rust_bridge::for_generated::SseSerializer) {
        <String>::sse_encode(self.data_dir, serializer);
        <String>::sse_encode(self.logs_dir, serializer);
        <Option<Vec<String>>>::sse_encode(self.default_relay_urls, serializer);
    }
}

#[cfg(not(target_family = "wasm"))]
mod io {
    // This file is automatically generated, so please do not edit it.
    // @generated by `flutter_rust_bridge`@ 2.12.0.

    // Section: imports

    use super::*;
    use crate::api::accounts::*;
    use crate::api::messages::*;
    use crate::api::relay_defaults::*;
    use crate::api::signer::*;
    use crate::api::utils::*;
    use crate::api::*;
    use crate::*;
    use flutter_rust_bridge::for_generated::byteorder::{
        NativeEndian, ReadBytesExt, WriteBytesExt,
    };
    use flutter_rust_bridge::for_generated::{Lifetimeable, Lockable, transform_result_dco};
    use flutter_rust_bridge::{Handler, IntoIntoDart};

    // Section: boilerplate

    flutter_rust_bridge::frb_generated_boilerplate_io!();

    #[unsafe(no_mangle)]
    pub extern "C" fn frbgen_whitenoise_rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerAppSettings(
        ptr: *const std::ffi::c_void,
    ) {
        MoiArc::<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<AppSettings>>::increment_strong_count(ptr as _);
    }

    #[unsafe(no_mangle)]
    pub extern "C" fn frbgen_whitenoise_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerAppSettings(
        ptr: *const std::ffi::c_void,
    ) {
        MoiArc::<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<AppSettings>>::decrement_strong_count(ptr as _);
    }

    #[unsafe(no_mangle)]
    pub extern "C" fn frbgen_whitenoise_rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerDartSigner(
        ptr: *const std::ffi::c_void,
    ) {
        MoiArc::<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<DartSigner>>::increment_strong_count(ptr as _);
    }

    #[unsafe(no_mangle)]
    pub extern "C" fn frbgen_whitenoise_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerDartSigner(
        ptr: *const std::ffi::c_void,
    ) {
        MoiArc::<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<DartSigner>>::decrement_strong_count(ptr as _);
    }

    #[unsafe(no_mangle)]
    pub extern "C" fn frbgen_whitenoise_rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerGroupId(
        ptr: *const std::ffi::c_void,
    ) {
        MoiArc::<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<GroupId>>::increment_strong_count(ptr as _);
    }

    #[unsafe(no_mangle)]
    pub extern "C" fn frbgen_whitenoise_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerGroupId(
        ptr: *const std::ffi::c_void,
    ) {
        MoiArc::<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<GroupId>>::decrement_strong_count(ptr as _);
    }

    #[unsafe(no_mangle)]
    pub extern "C" fn frbgen_whitenoise_rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerLanguage(
        ptr: *const std::ffi::c_void,
    ) {
        MoiArc::<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<Language>>::increment_strong_count(ptr as _);
    }

    #[unsafe(no_mangle)]
    pub extern "C" fn frbgen_whitenoise_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerLanguage(
        ptr: *const std::ffi::c_void,
    ) {
        MoiArc::<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<Language>>::decrement_strong_count(ptr as _);
    }

    #[unsafe(no_mangle)]
    pub extern "C" fn frbgen_whitenoise_rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerPublicKey(
        ptr: *const std::ffi::c_void,
    ) {
        MoiArc::<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<PublicKey>>::increment_strong_count(ptr as _);
    }

    #[unsafe(no_mangle)]
    pub extern "C" fn frbgen_whitenoise_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerPublicKey(
        ptr: *const std::ffi::c_void,
    ) {
        MoiArc::<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<PublicKey>>::decrement_strong_count(ptr as _);
    }

    #[unsafe(no_mangle)]
    pub extern "C" fn frbgen_whitenoise_rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRelayType(
        ptr: *const std::ffi::c_void,
    ) {
        MoiArc::<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<RelayType>>::increment_strong_count(ptr as _);
    }

    #[unsafe(no_mangle)]
    pub extern "C" fn frbgen_whitenoise_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRelayType(
        ptr: *const std::ffi::c_void,
    ) {
        MoiArc::<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<RelayType>>::decrement_strong_count(ptr as _);
    }

    #[unsafe(no_mangle)]
    pub extern "C" fn frbgen_whitenoise_rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRelayUrl(
        ptr: *const std::ffi::c_void,
    ) {
        MoiArc::<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<RelayUrl>>::increment_strong_count(ptr as _);
    }

    #[unsafe(no_mangle)]
    pub extern "C" fn frbgen_whitenoise_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRelayUrl(
        ptr: *const std::ffi::c_void,
    ) {
        MoiArc::<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<RelayUrl>>::decrement_strong_count(ptr as _);
    }

    #[unsafe(no_mangle)]
    pub extern "C" fn frbgen_whitenoise_rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerTag(
        ptr: *const std::ffi::c_void,
    ) {
        MoiArc::<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<Tag>>::increment_strong_count(ptr as _);
    }

    #[unsafe(no_mangle)]
    pub extern "C" fn frbgen_whitenoise_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerTag(
        ptr: *const std::ffi::c_void,
    ) {
        MoiArc::<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<Tag>>::decrement_strong_count(ptr as _);
    }

    #[unsafe(no_mangle)]
    pub extern "C" fn frbgen_whitenoise_rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerThemeMode(
        ptr: *const std::ffi::c_void,
    ) {
        MoiArc::<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<ThemeMode>>::increment_strong_count(ptr as _);
    }

    #[unsafe(no_mangle)]
    pub extern "C" fn frbgen_whitenoise_rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerThemeMode(
        ptr: *const std::ffi::c_void,
    ) {
        MoiArc::<flutter_rust_bridge::for_generated::RustAutoOpaqueInner<ThemeMode>>::decrement_strong_count(ptr as _);
    }
}
#[cfg(not(target_family = "wasm"))]
pub use io::*;
