You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: nym-vpn-core/crates/nym-vpn-lib-types/src/lib.rs
+13Lines changed: 13 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -3,6 +3,19 @@
3
3
4
4
//! Types shared between nym-vpn-lib and other crates in the workspace.
5
5
//!
6
+
//! ## Abstract
7
+
//!
8
+
//! - This crate contains all types necessary for interaction with nym-vpn-lib and daemon.
9
+
//! - Please do not re-export types from other crates, instead define them here.
10
+
//! When mirroring external types, consider providing `From` implementations for easier conversions. Feature-gate conversions to `nym-type-conversions`.
11
+
//! - Types visible via bindings should contain proper attributes and feature gated to `uniffi-bindings` for uniffi, `typescript-bindings` for TypeScript bindings.
12
+
//! - TypeScript bindings use serde for conversion from Rust to TS and feature-gated to `typescript-bindings`. Camel case is preferred for compatibility with TypeScript/Tauri.
13
+
//! - Be mindful of limitations of TypeScript and uniffi limitations. Keep exported types simple.
14
+
//!
15
+
//! ## Dependency considerations
16
+
//!
17
+
//! Please keep direct dependencies to other crates to a minimum to avoid dependency conflicts which can happen, especially when using it in other large projects such as Tauri.
18
+
6
19
//! ## Supported bindings
7
20
//!
8
21
//! 1. [uniffi](https://mozilla.github.io/uniffi-rs/latest/) bindings (feature flag: uniffi-bindings). The following limitations apply:
0 commit comments