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_mirror;
11pub mod nostr_relay;
12pub mod server;
13pub mod storage;
14pub mod sync;
15
16#[cfg(feature = "p2p")]
17pub mod webrtc;
18#[cfg(not(feature = "p2p"))]
19pub mod webrtc_stub;
20#[cfg(not(feature = "p2p"))]
21pub use webrtc_stub as webrtc;
22#[cfg(feature = "p2p")]
23pub mod p2p_common;
24
25pub mod socialgraph;
26
27pub use config::Config;
28pub use eviction::{spawn_background_eviction_task, BACKGROUND_EVICTION_INTERVAL};
29pub use fetch::{FetchConfig, Fetcher};
30pub use hashtree_resolver::nostr::{NostrResolverConfig, NostrRootResolver};
31pub use hashtree_resolver::{
32    Keys as NostrKeys, ResolverEntry, ResolverError, RootResolver, ToBech32 as NostrToBech32,
33};
34pub use server::HashtreeServer;
35pub use storage::{
36    CachedRoot, HashtreeStore, StorageByPriority, TreeMeta, PRIORITY_FOLLOWED, PRIORITY_OTHER,
37    PRIORITY_OWN,
38};
39pub use sync::{BackgroundSync, SyncConfig, SyncPriority, SyncStatus, SyncTask};
40#[cfg(feature = "p2p")]
41pub use webrtc::{
42    BluetoothBackendState, BluetoothConfig, ContentStore, DataMessage, LocalNostrBus,
43    PeerClassifier, PeerId, PeerPool, PeerRouter, PeerRouterConfig, PeerRouterState, PoolConfig,
44    PoolSettings, SharedLocalNostrBus, WebRTCConfig, WebRTCManager,
45};
46pub use webrtc::{ConnectionState, WebRTCState};