Initial Commit

This commit is contained in:
2026-05-27 23:47:53 +01:00
parent fbc70f96e6
commit 9b28db724f
18103 changed files with 1600554 additions and 0 deletions

View File

@@ -0,0 +1,46 @@
/**
* Compression pipeline for bitpacker.
*
* Public surface:
*
* - `CompressedBitPacker<T>` — `BitPacker` subclass that compresses packed
* bytes through a configured `CompressionAdapter` and frames them with a
* self-describing algorithm header.
* - `CompressionRegistry` + `defaultCompressionRegistry()` /
* `createCompressionRegistry()` — plug-in registry for compression adapters.
* Defaults: `none` always; `gzip` / `deflate` lazy-registered when the
* host environment exposes `CompressionStream`.
* - `NoCompressionAdapter`, `GzipCompressionAdapter`, `DeflateCompressionAdapter`
* — built-in adapters.
* - `CompressionAdapter`, `CompressionConfig`, `BitPackerCompressionAlgorithm`,
* `BitPackerCompressionOptions` — types.
* - `compressData`/`decompressData` — algorithm-by-name helpers.
* - `compressRle`/`decompressRle` — bytes-only RLE fast path (also re-exported
* from `./rle` for callers that want the focused subpath).
*/
export { DeflateCompressionAdapter } from "./adapters/deflate/deflate.js";
export { GzipCompressionAdapter } from "./adapters/gzip/gzip.js";
export { NoCompressionAdapter } from "./adapters/none/none.js";
export { compressData, decompressData } from "./api/api.js";
export {
CompressedBitPacker,
type CompressedBitPackerOptions,
} from "./compressed-bit-packer/compressed-bit-packer.js";
export {
_resetDefaultRegistryForTests,
CompressionRegistry,
createCompressionRegistry,
defaultCompressionRegistry,
} from "./registry/registry.js";
export {
type CompressionOptions,
compressRle,
decompressRle,
} from "./rle/rle.js";
export type {
BitPackerCompressionAlgorithm,
BitPackerCompressionOptions,
CompressionAdapter,
CompressionConfig,
} from "./types/types.js";