{
  "$comment": "Machine-generated export surface of the zipnative package (root entry AND the ./worker subpath) — the ground truth for agents (dist/*.d.ts is gitignored). Fields that cannot be extracted mechanically are null, never guessed. Regenerate with `npm run docs:api`; verify-docs api-json-sync enforces freshness.",
  "package": "zipnative",
  "sources": [
    "src/index.ts",
    "src/worker/index.ts"
  ],
  "exportCount": 77,
  "exports": [
    {
      "name": "AddEntryOptions",
      "kind": "type",
      "subpath": ".",
      "module": "src/core/zip-builder.ts",
      "signature": "export interface AddEntryOptions",
      "summary": "Per-entry options for `add`/`addDirectory`/`addStream`."
    },
    {
      "name": "ByteSource",
      "kind": "type",
      "subpath": ".",
      "module": "src/core/zip-source.ts",
      "signature": "export type ByteSource = AsyncIterable<Uint8Array> | ReadableStream<Uint8Array>;",
      "summary": "Any byte producer zipnative's streaming entry points accept."
    },
    {
      "name": "CodecCompressOptions",
      "kind": "type",
      "subpath": ".",
      "module": "src/codecs/codec-registry.ts",
      "signature": "export interface CodecCompressOptions",
      "summary": "Options passed to `ZipCodec.compressSync` (M2+)."
    },
    {
      "name": "CreateZipOptions",
      "kind": "type",
      "subpath": ".",
      "module": "src/core/zip-builder.ts",
      "signature": "export interface CreateZipOptions extends ZipCommonOptions",
      "summary": "Options for createZip."
    },
    {
      "name": "DEFAULT_ZIP_LIMITS",
      "kind": "value",
      "subpath": ".",
      "module": "src/core/zip-limits.ts",
      "signature": "export const DEFAULT_ZIP_LIMITS: ZipLimits =",
      "summary": "Default security bounds — the safe path for untrusted input."
    },
    {
      "name": "DeflateTier",
      "kind": "type",
      "subpath": ".",
      "module": "src/codecs/deflate.ts",
      "signature": "export type DeflateTier = 'pure-pinned' | 'injected' | 'node-zlib' | 'pure';",
      "summary": "The four compression tiers activeDeflateTier can report."
    },
    {
      "name": "EntryVerification",
      "kind": "type",
      "subpath": ".",
      "module": "src/types/zip-types.ts",
      "signature": "export interface EntryVerification",
      "summary": "Result of `ZipReader.verifyEntry()`."
    },
    {
      "name": "ExtractOptions",
      "kind": "type",
      "subpath": ".",
      "module": "src/parser/zip-extract.ts",
      "signature": "export interface ExtractOptions extends ZipCommonOptions",
      "summary": "Options for extractZip / extractZipStream."
    },
    {
      "name": "ExtractedEntry",
      "kind": "type",
      "subpath": ".",
      "module": "src/parser/zip-extract.ts",
      "signature": "export interface ExtractedEntry",
      "summary": "One extracted file."
    },
    {
      "name": "ExtractedStreamEntry",
      "kind": "type",
      "subpath": ".",
      "module": "src/parser/zip-extract.ts",
      "signature": "export interface ExtractedStreamEntry",
      "summary": "One extracted file, streamed."
    },
    {
      "name": "FLAG_DATA_DESCRIPTOR",
      "kind": "value",
      "subpath": ".",
      "module": "src/core/zip-constants.ts",
      "signature": "export const FLAG_DATA_DESCRIPTOR = 0x0008;",
      "summary": "General-purpose bit 3 — sizes/CRC trail the data in a data descriptor."
    },
    {
      "name": "FLAG_ENCRYPTED",
      "kind": "value",
      "subpath": ".",
      "module": "src/core/zip-constants.ts",
      "signature": "export const FLAG_ENCRYPTED = 0x0001;",
      "summary": "General-purpose bit 0 — the entry is encrypted (ZipCrypto/AES marker)."
    },
    {
      "name": "FLAG_STRONG_ENCRYPTION",
      "kind": "value",
      "subpath": ".",
      "module": "src/core/zip-constants.ts",
      "signature": "export const FLAG_STRONG_ENCRYPTION = 0x0040;",
      "summary": "General-purpose bit 6 — strong encryption (always refused, like bit 0)."
    },
    {
      "name": "FLAG_UTF8",
      "kind": "value",
      "subpath": ".",
      "module": "src/core/zip-constants.ts",
      "signature": "export const FLAG_UTF8 = 0x0800;",
      "summary": "General-purpose bit 11 (EFS) — the name and comment bytes are UTF-8."
    },
    {
      "name": "Inflator",
      "kind": "type",
      "subpath": ".",
      "module": "src/codecs/inflate-stream.ts",
      "signature": "export interface Inflator",
      "summary": "Resumable raw-deflate decoder — obtain via createInflator."
    },
    {
      "name": "IterateZipOptions",
      "kind": "type",
      "subpath": ".",
      "module": "src/parser/zip-iterate.ts",
      "signature": "export type IterateZipOptions = ZipCommonOptions;",
      "summary": "Options for iterateZipEntries (the shared strict/diagnostic/ limits set)."
    },
    {
      "name": "METHOD_DEFLATE",
      "kind": "value",
      "subpath": ".",
      "module": "src/codecs/codec-registry.ts",
      "signature": "export const METHOD_DEFLATE = 8;",
      "summary": "ZIP compression-method id 8 — raw DEFLATE (RFC 1951)."
    },
    {
      "name": "METHOD_STORE",
      "kind": "value",
      "subpath": ".",
      "module": "src/codecs/codec-registry.ts",
      "signature": "export const METHOD_STORE = 0;",
      "summary": "ZIP compression-method id 0 — stored, no compression."
    },
    {
      "name": "OpenZipOptions",
      "kind": "type",
      "subpath": ".",
      "module": "src/parser/zip-reader.ts",
      "signature": "export interface OpenZipOptions extends ZipCommonOptions",
      "summary": "Options for openZip."
    },
    {
      "name": "ReadEntryOptions",
      "kind": "type",
      "subpath": ".",
      "module": "src/parser/zip-reader.ts",
      "signature": "export interface ReadEntryOptions",
      "summary": "Options for the per-entry read methods."
    },
    {
      "name": "StreamOptions",
      "kind": "type",
      "subpath": ".",
      "module": "src/core/zip-stream-writer.ts",
      "signature": "export interface StreamOptions",
      "summary": "Options for `ZipWriter.stream()`."
    },
    {
      "name": "StreamedZipEntry",
      "kind": "type",
      "subpath": ".",
      "module": "src/parser/zip-iterate.ts",
      "signature": "export interface StreamedZipEntry",
      "summary": "One forward-streamed entry."
    },
    {
      "name": "StreamedZipHeader",
      "kind": "type",
      "subpath": ".",
      "module": "src/parser/zip-iterate.ts",
      "signature": "export interface StreamedZipHeader",
      "summary": "LFH-derived metadata only — a SUBSET of `ZipEntry`."
    },
    {
      "name": "VERSION",
      "kind": "value",
      "subpath": ".",
      "module": "src/index.ts",
      "signature": "export const VERSION = '1.0.0';",
      "summary": "Library version — kept in sync with package.json by verify:docs."
    },
    {
      "name": "VerifiedEntry",
      "kind": "type",
      "subpath": ".",
      "module": "src/parser/zip-verify.ts",
      "signature": "export interface VerifiedEntry extends EntryVerification",
      "summary": "One entry's verification outcome inside a ZipVerificationReport."
    },
    {
      "name": "VerifyZipOptions",
      "kind": "type",
      "subpath": ".",
      "module": "src/parser/zip-verify.ts",
      "signature": "export interface VerifyZipOptions",
      "summary": "Options for verifyZip."
    },
    {
      "name": "ZipBaseErrorCode",
      "kind": "type",
      "subpath": ".",
      "module": "src/types/zip-errors.ts",
      "signature": "export type ZipBaseErrorCode =",
      "summary": "Codes carried by the base ZipError (usage and invariant faults)."
    },
    {
      "name": "ZipCodec",
      "kind": "type",
      "subpath": ".",
      "module": "src/codecs/codec-registry.ts",
      "signature": "export interface ZipCodec",
      "summary": "One compression codec, keyed by its CFH compression-method id."
    },
    {
      "name": "ZipCommonOptions",
      "kind": "type",
      "subpath": ".",
      "module": "src/types/zip-types.ts",
      "signature": "export interface ZipCommonOptions",
      "summary": "Shared option fragment embedded in every top-level options type."
    },
    {
      "name": "ZipCompressionOptions",
      "kind": "type",
      "subpath": ".",
      "module": "src/core/zip-builder.ts",
      "signature": "export interface ZipCompressionOptions",
      "summary": "Per-entry / archive-default compression settings."
    },
    {
      "name": "ZipDataError",
      "kind": "value",
      "subpath": ".",
      "module": "src/types/zip-errors.ts",
      "signature": "export class ZipDataError extends ZipError",
      "summary": "Content integrity failure: CRC or size mismatch against declared metadata."
    },
    {
      "name": "ZipDataErrorCode",
      "kind": "type",
      "subpath": ".",
      "module": "src/types/zip-errors.ts",
      "signature": "export type ZipDataErrorCode =",
      "summary": "Codes carried by ZipDataError."
    },
    {
      "name": "ZipDiagnostic",
      "kind": "type",
      "subpath": ".",
      "module": "src/types/zip-types.ts",
      "signature": "export interface ZipDiagnostic",
      "summary": "A single non-fatal conformance diagnostic."
    },
    {
      "name": "ZipDiagnosticCode",
      "kind": "type",
      "subpath": ".",
      "module": "src/types/zip-types.ts",
      "signature": "export type ZipDiagnosticCode =",
      "summary": "Closed union of diagnostic codes."
    },
    {
      "name": "ZipDiagnosticHandler",
      "kind": "type",
      "subpath": ".",
      "module": "src/types/zip-types.ts",
      "signature": "export type ZipDiagnosticHandler = (diagnostic: ZipDiagnostic) => void;",
      "summary": "Caller-supplied diagnostic sink (receives every diagnostic, no dedup)."
    },
    {
      "name": "ZipEntry",
      "kind": "type",
      "subpath": ".",
      "module": "src/types/zip-types.ts",
      "signature": "export interface ZipEntry",
      "summary": "One central-directory entry — a plain readonly data object."
    },
    {
      "name": "ZipError",
      "kind": "value",
      "subpath": ".",
      "module": "src/types/zip-errors.ts",
      "signature": "export class ZipError extends Error",
      "summary": "Base class for every error thrown by zipnative."
    },
    {
      "name": "ZipErrorCode",
      "kind": "type",
      "subpath": ".",
      "module": "src/types/zip-errors.ts",
      "signature": "export type ZipErrorCode =",
      "summary": "Every stable error code zipnative can throw."
    },
    {
      "name": "ZipExtraField",
      "kind": "type",
      "subpath": ".",
      "module": "src/types/zip-types.ts",
      "signature": "export interface ZipExtraField",
      "summary": "One raw extra field, id + payload (zero-copy subarray of the source)."
    },
    {
      "name": "ZipFormatError",
      "kind": "value",
      "subpath": ".",
      "module": "src/types/zip-errors.ts",
      "signature": "export class ZipFormatError extends ZipError",
      "summary": "The archive (or one of its records) is structurally invalid."
    },
    {
      "name": "ZipFormatErrorCode",
      "kind": "type",
      "subpath": ".",
      "module": "src/types/zip-errors.ts",
      "signature": "export type ZipFormatErrorCode =",
      "summary": "Codes carried by ZipFormatError."
    },
    {
      "name": "ZipLimitError",
      "kind": "value",
      "subpath": ".",
      "module": "src/types/zip-errors.ts",
      "signature": "export class ZipLimitError extends ZipError",
      "summary": "A configured security bound from ZipLimits was exceeded."
    },
    {
      "name": "ZipLimitErrorCode",
      "kind": "type",
      "subpath": ".",
      "module": "src/types/zip-errors.ts",
      "signature": "export type ZipLimitErrorCode =",
      "summary": "Codes carried by ZipLimitError."
    },
    {
      "name": "ZipLimits",
      "kind": "type",
      "subpath": ".",
      "module": "src/types/zip-types.ts",
      "signature": "export interface ZipLimits",
      "summary": "Named security bounds consulted by every loop over untrusted archive bytes."
    },
    {
      "name": "ZipModifier",
      "kind": "type",
      "subpath": ".",
      "module": "src/parser/zip-modifier.ts",
      "signature": "export interface ZipModifier",
      "summary": "Incremental archive modifier — obtain via createZipModifier."
    },
    {
      "name": "ZipModifierOptions",
      "kind": "type",
      "subpath": ".",
      "module": "src/parser/zip-modifier.ts",
      "signature": "export interface ZipModifierOptions extends ZipCommonOptions",
      "summary": "Options for createZipModifier."
    },
    {
      "name": "ZipReader",
      "kind": "type",
      "subpath": ".",
      "module": "src/parser/zip-reader.ts",
      "signature": "export interface ZipReader",
      "summary": "Random-access, lazy, secure ZIP reader over an in-memory archive."
    },
    {
      "name": "ZipSecurityError",
      "kind": "value",
      "subpath": ".",
      "module": "src/types/zip-errors.ts",
      "signature": "export class ZipSecurityError extends ZipError",
      "summary": "The archive has an active-attack shape: path traversal, overlapping entries, central-directory/local-header divergence, Zip64 spoofing."
    },
    {
      "name": "ZipSecurityErrorCode",
      "kind": "type",
      "subpath": ".",
      "module": "src/types/zip-errors.ts",
      "signature": "export type ZipSecurityErrorCode =",
      "summary": "Codes carried by ZipSecurityError."
    },
    {
      "name": "ZipUnsupportedError",
      "kind": "value",
      "subpath": ".",
      "module": "src/types/zip-errors.ts",
      "signature": "export class ZipUnsupportedError extends ZipError",
      "summary": "The archive uses a feature zipnative deliberately does not support (encryption, unknown compression method, multi-disk, Zip64 streaming, CD-less descriptors in unsupported shapes)."
    },
    {
      "name": "ZipUnsupportedErrorCode",
      "kind": "type",
      "subpath": ".",
      "module": "src/types/zip-errors.ts",
      "signature": "export type ZipUnsupportedErrorCode =",
      "summary": "Codes carried by ZipUnsupportedError."
    },
    {
      "name": "ZipUnsupportedFeature",
      "kind": "type",
      "subpath": ".",
      "module": "src/types/zip-errors.ts",
      "signature": "export type ZipUnsupportedFeature =",
      "summary": "The closed vocabulary of ZipUnsupportedError.feature values: `'zipcrypto'`, `'strong-encryption'`, `'multi-disk'`, `'zip64-streaming'`, `'cd-less-descriptor'`, or `` `method:${n}` `` for an unregistered compression method."
    },
    {
      "name": "ZipVerificationReport",
      "kind": "type",
      "subpath": ".",
      "module": "src/parser/zip-verify.ts",
      "signature": "export interface ZipVerificationReport",
      "summary": "The machine-readable result of verifyZip."
    },
    {
      "name": "ZipWriter",
      "kind": "type",
      "subpath": ".",
      "module": "src/core/zip-builder.ts",
      "signature": "export interface ZipWriter",
      "summary": "Archive writer — obtain via createZip."
    },
    {
      "name": "activeDeflateTier",
      "kind": "value",
      "subpath": ".",
      "module": "src/codecs/deflate.ts",
      "signature": "export function activeDeflateTier(deterministic = false): DeflateTier",
      "summary": "The compression tier `deflateRawSync` would use right now."
    },
    {
      "name": "crc32",
      "kind": "value",
      "subpath": ".",
      "module": "src/codecs/crc32.ts",
      "signature": "export function crc32(data: Uint8Array, seed = 0): number",
      "summary": "Compute (or continue) a CRC-32."
    },
    {
      "name": "createInflator",
      "kind": "value",
      "subpath": ".",
      "module": "src/codecs/inflate-stream.ts",
      "signature": "export function createInflator(maxOutput: number): Inflator",
      "summary": "Create a resumable raw-deflate (RFC 1951) decoder — public since 0.8.0."
    },
    {
      "name": "createZip",
      "kind": "value",
      "subpath": ".",
      "module": "src/core/zip-builder.ts",
      "signature": "export function createZip(options?: CreateZipOptions): ZipWriter",
      "summary": "Create an archive writer."
    },
    {
      "name": "createZipModifier",
      "kind": "value",
      "subpath": ".",
      "module": "src/parser/zip-modifier.ts",
      "signature": "export function createZipModifier(reader: ZipReader, options?: ZipModifierOptions): ZipModifier",
      "summary": "Wrap an opened archive in an incremental modifier."
    },
    {
      "name": "extractZip",
      "kind": "value",
      "subpath": ".",
      "module": "src/parser/zip-extract.ts",
      "signature": "export function extractZip(bytes: Uint8Array, options?: ExtractOptions): ExtractedEntry[]",
      "summary": "Extract an archive fully, in memory, with the security guards applied."
    },
    {
      "name": "extractZipStream",
      "kind": "value",
      "subpath": ".",
      "module": "src/parser/zip-extract.ts",
      "signature": "export async function* extractZipStream( bytes: Uint8Array, options?: ExtractOptions, )",
      "summary": "Extract an archive entry-by-entry with streamed content — bounded memory for large entries."
    },
    {
      "name": "getCodec",
      "kind": "value",
      "subpath": ".",
      "module": "src/codecs/codec-registry.ts",
      "signature": "export function getCodec(method: number): ZipCodec | null",
      "summary": "Look up the codec for a compression-method id, or `null` if unregistered."
    },
    {
      "name": "getUnixMode",
      "kind": "value",
      "subpath": ".",
      "module": "src/core/zip-attributes.ts",
      "signature": "export function getUnixMode(entry: ZipEntry): number | null",
      "summary": "The entry's Unix mode bits (type + permissions, e.g."
    },
    {
      "name": "initNodeZipCodecs",
      "kind": "value",
      "subpath": ".",
      "module": "src/codecs/inflate.ts",
      "signature": "export async function initNodeZipCodecs(): Promise<void>",
      "summary": "Resolve node:zlib in ESM contexts — both directions (inflate here, deflate via codecs/deflate.ts)."
    },
    {
      "name": "isSymlinkEntry",
      "kind": "value",
      "subpath": ".",
      "module": "src/core/zip-attributes.ts",
      "signature": "export function isSymlinkEntry(entry: ZipEntry): boolean",
      "summary": "Is this entry a Unix symlink (external-attribute file type `S_IFLNK`)?"
    },
    {
      "name": "iterateZipEntries",
      "kind": "value",
      "subpath": ".",
      "module": "src/parser/zip-iterate.ts",
      "signature": "export async function* iterateZipEntries( source: ByteSource, options?: IterateZipOptions, )",
      "summary": "Iterate an archive's local entries off an async byte stream — an `AsyncIterable<Uint8Array>` or a Web `ReadableStream<Uint8Array>` (a `fetch` body, `File.stream()`, …) since 0.9."
    },
    {
      "name": "openZip",
      "kind": "value",
      "subpath": ".",
      "module": "src/parser/zip-reader.ts",
      "signature": "export function openZip(bytes: Uint8Array, options?: OpenZipOptions): ZipReader",
      "summary": "Open a ZIP archive held in memory."
    },
    {
      "name": "registerCodec",
      "kind": "value",
      "subpath": ".",
      "module": "src/codecs/codec-registry.ts",
      "signature": "export function registerCodec(codec: ZipCodec): void",
      "summary": "Register (or replace) a codec for a compression-method id."
    },
    {
      "name": "sanitizeEntryPath",
      "kind": "value",
      "subpath": ".",
      "module": "src/parser/zip-extract.ts",
      "signature": "export function sanitizeEntryPath(name: string): string | null",
      "summary": "Return the safe relative form of an entry name, or `null` when the name cannot be made safe (traversal, absolute, drive/UNC, NUL, NTFS ADS, or a Windows reserved device name)."
    },
    {
      "name": "setDeflateImpl",
      "kind": "value",
      "subpath": ".",
      "module": "src/codecs/deflate.ts",
      "signature": "export function setDeflateImpl(fn: ((data: Uint8Array, level: number) => Uint8Array) | null): void",
      "summary": "Inject a custom raw-deflate compressor (tier 1), or `null` to remove it."
    },
    {
      "name": "setInflateImpl",
      "kind": "value",
      "subpath": ".",
      "module": "src/codecs/inflate.ts",
      "signature": "export function setInflateImpl(fn: ((data: Uint8Array, maxOutput: number) => Uint8Array) | null): void",
      "summary": "Inject a custom raw-deflate decompressor (tier 1), or `null` to remove it."
    },
    {
      "name": "verifyZip",
      "kind": "value",
      "subpath": ".",
      "module": "src/parser/zip-verify.ts",
      "signature": "export function verifyZip(data: Uint8Array, options?: VerifyZipOptions): ZipVerificationReport",
      "summary": "Deep-verify an archive in one call: eager structural validation, per-entry CRC-32/size/local-header checks, diagnostics collected."
    },
    {
      "name": "ByteSource",
      "kind": "type",
      "subpath": "./worker",
      "module": "src/core/zip-source.ts",
      "signature": "export type ByteSource = AsyncIterable<Uint8Array> | ReadableStream<Uint8Array>;",
      "summary": "Any byte producer zipnative's streaming entry points accept."
    },
    {
      "name": "ParallelZipOptions",
      "kind": "type",
      "subpath": "./worker",
      "module": "src/worker/index.ts",
      "signature": "export interface ParallelZipOptions extends CreateZipOptions",
      "summary": "Options for createParallelZip — a superset of CreateZipOptions."
    },
    {
      "name": "ParallelZipWriter",
      "kind": "type",
      "subpath": "./worker",
      "module": "src/worker/index.ts",
      "signature": "export interface ParallelZipWriter",
      "summary": "Same surface as `ZipWriter`, with the one honest signature change: worker compression is asynchronous, so `toBytes()` returns a Promise."
    },
    {
      "name": "StreamOptions",
      "kind": "type",
      "subpath": "./worker",
      "module": "src/core/zip-stream-writer.ts",
      "signature": "export interface StreamOptions",
      "summary": "Options for `ZipWriter.stream()`."
    },
    {
      "name": "createParallelZip",
      "kind": "value",
      "subpath": "./worker",
      "module": "src/worker/index.ts",
      "signature": "export function createParallelZip(options?: ParallelZipOptions): ParallelZipWriter",
      "summary": "Create a parallel archive writer (see the module header for the contract)."
    }
  ]
}
