#![cfg_attr(not(target_family = "wasm"), deny(missing_docs))]
#[cfg(target_family = "wasm")]
compile_error!(
"rig-memvid does not currently support `wasm` targets: memvid-core requires \
synchronous file I/O and OS-level file locks. Disable rig-memvid for wasm \
builds via Cargo target-specific dependencies."
);
#[cfg(not(target_family = "wasm"))]
mod cards_context;
#[cfg(all(not(target_family = "wasm"), feature = "compaction"))]
mod compactor;
#[cfg(all(not(target_family = "wasm"), feature = "compaction"))]
mod dedup;
#[cfg(all(not(target_family = "wasm"), feature = "compaction"))]
mod demotion;
#[cfg(not(target_family = "wasm"))]
mod error;
#[cfg(all(not(target_family = "wasm"), feature = "compaction"))]
mod frame_writer;
#[cfg(not(target_family = "wasm"))]
mod hook;
#[cfg(not(target_family = "wasm"))]
pub mod inmem;
#[cfg(not(target_family = "wasm"))]
mod memory_graph;
#[cfg(all(not(target_family = "wasm"), feature = "compaction"))]
pub mod metadata;
#[cfg(all(not(target_family = "wasm"), feature = "context-projection"))]
pub mod projection;
#[cfg(all(not(target_family = "wasm"), feature = "context-projection"))]
pub use projection::{
IntoContextItem, MemoryCandidate, MemoryContextPack, SupersededCandidate,
card_docs_to_context_items, inmem_hits_to_context_items, items_to_memory_candidates,
memory_cards_to_context_items, search_hits_to_context_items, supersede,
};
#[cfg(not(target_family = "wasm"))]
mod store;
#[cfg(not(target_family = "wasm"))]
pub use cards_context::{CardDoc, CardSelection, MemoryCardContext};
#[cfg(all(not(target_family = "wasm"), feature = "compaction"))]
pub use compactor::MemvidStoringCompactor;
#[cfg(all(not(target_family = "wasm"), feature = "compaction"))]
pub use demotion::MemvidDemotionHook;
#[cfg(not(target_family = "wasm"))]
pub use error::MemvidError;
#[cfg(not(target_family = "wasm"))]
pub use hook::{
MemoryConfig, MemoryConfigBuilder, MemvidPersistHook, WriteFailure, WriteFailureAction,
WriteFailurePhase, WritePolicy, WriteTransform,
};
#[cfg(not(target_family = "wasm"))]
pub use inmem::{Episode, InMemoryError, InMemoryHit, InMemoryStore};
#[cfg(not(target_family = "wasm"))]
pub use memory_graph::MemoryGraph;
#[cfg(all(not(target_family = "wasm"), feature = "compaction"))]
pub use metadata::{FrameKind, MemvidFrameMetadata};
#[cfg(all(not(target_family = "wasm"), feature = "compaction"))]
pub use rig::memory::{Compactor, DemotionHook, MemoryError};
#[cfg(all(not(target_family = "wasm"), feature = "compaction"))]
pub use rig_memory::{CompactingMemory, TemplateCompactor, TextSummary};
#[cfg(not(target_family = "wasm"))]
pub use store::{MemvidFilter, MemvidStore, MemvidStoreBuilder};
#[cfg(not(target_family = "wasm"))]
pub use memvid_core::types::{LogicMeshStats, SearchHitEntity};
#[cfg(not(target_family = "wasm"))]
pub use memvid_core::{
EntityKind, FollowResult, MemoryCard, MemoryCardId, MemoryKind, MeshEdge, MeshNode, Polarity,
VersionRelation,
};
#[cfg(not(target_family = "wasm"))]
pub use memvid_core;