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