Skip to main content

hashtree_cli/
lib.rs

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