pub mod client;
pub mod collection;
pub mod document;
pub mod embedding;
pub mod error;
pub mod llm;
pub mod rag;
pub mod search;
pub mod types;
pub mod watch;
#[cfg(feature = "code")]
pub mod code;
pub mod filecache;
pub mod agent;
pub use client::{Spire, SpireBuilder};
pub use collection::Collection;
pub use document::Doc;
pub use error::{Error, Result};
pub use filecache::FileCache;
pub use search::{Filter, Hit, Search};
pub use types::{IndexResult, IngestResult};
pub use watch::{Change, WatchStream};
#[cfg(feature = "macros")]
pub use spire_ai_macros::Doc;
pub mod prelude {
pub use crate::client::{Spire, SpireBuilder};
pub use crate::collection::Collection;
pub use crate::document::Doc;
pub use crate::embedding::Embedder;
pub use crate::error::{Error, Result};
pub use crate::rag::chunker::Chunk;
pub use crate::rag::{RagBuilder, RagPipeline, ScoredChunk};
pub use crate::search::{Filter, Hit, Search};
pub use crate::{Change, WatchStream};
#[cfg(feature = "code")]
pub use crate::code::{CodeChunk, CodeContext, CodeIndex};
pub use crate::filecache::{CacheStats, FileCache, ReadResult};
pub use crate::agent::AgentMemory;
#[cfg(feature = "macros")]
pub use spire_ai_macros::Doc;
pub use serde::{Deserialize, Serialize};
}