#![warn(rustdoc::broken_intra_doc_links)]
pub mod beta_inv;
pub mod bitpack;
pub mod codebook;
pub mod codec;
pub mod digest;
pub mod directions;
pub mod error;
#[cfg(feature = "kv")]
pub mod kv;
pub mod lloyd;
pub mod metrics;
pub mod profile;
pub mod receipt;
pub mod rotation;
pub mod spherical_beta;
pub use codebook::{build_initial_codebook, FibCodebookV1};
pub use codec::{FibCodeV1, FibQuantizer};
pub use directions::{fibonacci_sphere_3d, fibonacci_spiral_2d, roberts_kronecker};
pub use error::{FibQuantError, Result};
pub use lloyd::{LloydRepairEventV1, LloydReportV1};
pub use profile::{
DirectionMethod, EmptyCellPolicy, FibQuantProfileV1, NormFormat, RadiusMethod, SourceMode,
MAX_AMBIENT_DIM, MAX_BLOCK_DIM, MAX_CODEBOOK_SIZE, MAX_CODEBOOK_VALUES, MAX_PACKED_INDEX_BITS,
MAX_ROTATION_MATRIX_VALUES, MAX_TRAINING_SAMPLES,
};
pub use receipt::FibQuantCompressionReceiptV1;
pub use rotation::{StoredRotation, ROTATION_ALGORITHM_VERSION, ROTATION_SCHEMA};
pub use spherical_beta::{
beta_d_k, radius_quantile, radius_quantile_k2_closed_form, sample_reference_projection,
sample_spherical_beta,
};