#![forbid(unsafe_code)]
#![warn(missing_docs, missing_debug_implementations, rust_2018_idioms)]
mod cache;
mod client;
mod document;
mod error;
mod frame;
mod graph;
mod llm;
mod options;
mod params;
mod pool;
mod response;
mod serde_null;
mod sql;
#[cfg(feature = "tls")]
mod tls;
mod transport;
mod vector;
mod wire;
pub use crate::cache::{CacheKeyInfo, CachePair, StreamEntry};
pub use crate::client::Client;
pub use crate::document::{
AccumulatorOp, AggregateStage, Document, DocumentFilter, DocumentIndex, DocumentStats,
DocumentUpdate, GroupAccumulator, GroupKey, SortKey, UpdateCounts,
};
pub use crate::error::{Error, ErrorKind, Result, NOT_LEADER};
pub use crate::frame::{Frame, Tag, FRAME_VERSION, MAX_CONTROL_PAYLOAD, MAX_DATA_PAYLOAD};
pub use crate::graph::{
GraphDirection, GraphEdge, GraphEdgePage, GraphNeighbor, GraphNode, GraphNodePage, GraphPath,
GraphRows, GraphTraversal, GraphVisit, NeighborOptions, PathOptions, TraverseOptions,
WeightedPathOptions,
};
pub use crate::llm::{LlmOptions, LlmSource, OutputFormat};
pub use crate::options::{
Options, TlsOptions, ALL_FEATURES, DEFAULT_DATABASE, DEFAULT_PORT, FEATURE_CORRELATION_ID,
FEATURE_SERVER_PARAMS, FEATURE_SESSION_TXN, VERSION,
};
pub use crate::params::Param;
pub use crate::pool::Pool;
pub use crate::response::Response;
pub use crate::sql::{Rows, Statement, TransactionResult};
pub use crate::vector::{
VectorCollectionInfo, VectorCollectionSummary, VectorHit, VectorItem, VectorMetric, VectorPage,
VectorQuantization, VectorSearchResult,
};