import type { ITokenizer } from 'strtok3'; import { type IFileHeader, type ILocalFileHeader } from "./ZipToken.js"; export type InflateFileFilterResult = { handler: InflatedDataHandler | false; stop?: boolean; }; /** * Return false when to ignore the file, return `InflatedDataHandler` to handle extracted data */ export type InflateFileFilter = (file: ILocalFileHeader) => InflateFileFilterResult; export type InflatedDataHandler = (fileData: Uint8Array) => Promise; export declare class ZipHandler { private tokenizer; private syncBuffer; constructor(tokenizer: ITokenizer); isZip(): Promise; private peekSignature; findEndOfCentralDirectoryLocator(): Promise; readCentralDirectory(): Promise; unzip(fileCb: InflateFileFilter): Promise; private iterateOverCentralDirectory; private inflate; private readLocalFileHeader; }