Skip to main content

hashtree_cli/
lib.rs

1#[cfg(feature = "cashu")]
2pub mod cashu;
3#[cfg(feature = "cashu")]
4pub mod cashu_cli;
5pub mod cashu_helper;
6pub mod config;
7pub mod daemon;
8pub mod eviction;
9pub mod fetch;
10pub mod nostr_relay;
11pub mod server;
12pub mod storage;
13pub mod sync;
14
15#[cfg(feature = "p2p")]
16pub mod webrtc;
17#[cfg(not(feature = "p2p"))]
18pub mod webrtc_stub;
19#[cfg(not(feature = "p2p"))]
20pub use webrtc_stub as webrtc;
21#[cfg(feature = "p2p")]
22pub mod p2p_common;
23
24pub mod socialgraph;
25
26pub use config::Config;
27pub use eviction::{spawn_background_eviction_task, BACKGROUND_EVICTION_INTERVAL};
28pub use fetch::{FetchConfig, Fetcher};
29pub use hashtree_resolver::nostr::{NostrResolverConfig, NostrRootResolver};
30pub use hashtree_resolver::{
31    Keys as NostrKeys, ResolverEntry, ResolverError, RootResolver, ToBech32 as NostrToBech32,
32};
33pub use server::HashtreeServer;
34pub use storage::{
35    CachedRoot, HashtreeStore, StorageByPriority, TreeMeta, PRIORITY_FOLLOWED, PRIORITY_OTHER,
36    PRIORITY_OWN,
37};
38pub use sync::{BackgroundSync, SyncConfig, SyncPriority, SyncStatus, SyncTask};
39pub use webrtc::{ConnectionState, WebRTCState};
40#[cfg(feature = "p2p")]
41pub use webrtc::{
42    ContentStore, DataMessage, PeerClassifier, PeerId, PeerPool, PoolConfig, PoolSettings,
43    WebRTCConfig, WebRTCManager,
44};