export interface ZipEntryInfo{name:string;compressedBytes:number;uncompressedBytes:number;}export interface ZipEntryInspector{write(chunk:Uint8Array):void;close():void;}export interface ZipArchiveGuardOptions{description:string;maxEntries:number;maxUncompressedBytes:number;allowNonZip?:boolean;signal?:AbortSignal;createInspector?:(entry:ZipEntryInfo)=>ZipEntryInspector|undefined;} /** Immutable central-directory entry metadata safe to expose without an archive peer. */ interface ZipArchiveEntryMetadata extends ZipEntryInfo{readonly dir:boolean;} /** Immutable, bounded archive listing produced by the owned ZIP parser. */ export interface ZipArchiveMetadata{readonly entries:readonly ZipArchiveEntryMetadata[];readonly totalUncompressedBytes:number;}export interface XmlComplexityLimits{includeEntry:(name:string)=>boolean;maxNodes:number;maxRows?:number;maxCells?:number;} /** * Creates per-entry streaming XML inspectors backed by one archive-wide complexity budget. * Tokenization keeps only a short opening-tag prefix, so a large text node or attribute cannot * become a second unbounded allocation while the ZIP output itself is being measured. */ export declare function createXmlComplexityInspectorFactory(limits:XmlComplexityLimits):(entry:ZipEntryInfo)=>ZipEntryInspector|undefined; /** * Validates classic single-disk ZIP metadata and enforces declared entry and expansion ceilings * without inflating an entry or passing the archive to an optional parser. */ export declare function assertZipArchiveMetadataWithinLimits(source:ArrayBuffer,options:ZipArchiveGuardOptions):ZipArchiveMetadata|null; /** * Validates and measures a classic single-disk ZIP before an optional document peer expands it. * Stored entries are inspected through zero-copy ArrayBuffer views; DEFLATE entries are inspected * chunk-by-chunk, with an abort/generation boundary immediately after every stream await. */ export declare function assertZipArchiveWithinLimits(source:ArrayBuffer,options:ZipArchiveGuardOptions):Promise;export{};