mod config;
pub(crate) mod core;
mod encoder;
mod error;
mod internal;
mod session;
mod shared;
pub mod dictionary;
#[cfg(feature = "experimental")]
pub mod framing;
#[cfg(not(feature = "no_std"))]
pub mod io;
#[cfg(not(feature = "no_std"))]
pub mod parallel;
pub use crate::{Backend, RetentionPolicy};
pub use config::{
BlockBits, BlockSize, CompressionMode, ConfigError, DistanceParams, EncoderConfig,
LiteralContextMode, Quality, SizeOverflow, Window, WindowEncoding,
};
pub use encoder::{Compressor, CompressorBuilder};
pub use error::EncodeError;
pub use session::{EncoderSession, EncoderStatus, InputSize, Operation, Progress, StreamConfig};
pub(crate) use internal::{
BrotliCompressError, BrotliResult, CompressMode, CompressParams, DistanceCodes, QualityLevel,
};
#[cfg(test)]
pub(crate) use internal::{WindowBits, WindowOutOfRange};