/** * HWP 5.0 CFB(OLE2) 컨테이너 리더. * SheetJS 'cfb' 패키지를 감싸 HWP 친화적 API 제공. * * HWP CFB 구조: * /FileHeader (256B, 비압축) * /DocInfo (압축 가능 — 비밀 stream에서 raw deflate) * /BodyText/Section{N} (압축 가능) * /ViewText/Section{N} (배포용 문서; 암호화) * /BinData/BIN{XXXX}.{ext} (이미지/임베디드) * /PrvImage, /PrvText (미리보기) * /Scripts/..., /DocOptions/... * * 원작 참고: rhwp/src/parser/cfb_reader.rs (MIT, Edward Kim) */ export declare class CfbError extends Error { constructor(msg: string); } export declare class HwpCfbReader { private container; constructor(data: Uint8Array); /** path 정확히 일치하는 stream 의 raw bytes (압축/암호화 그대로) */ readStreamRaw(path: string): Uint8Array | null; /** 디플레이트 압축 해제. raw deflate (zlib 헤더 없음). */ static decompress(data: Uint8Array): Uint8Array; /** FileHeader (256바이트, 비압축) */ readFileHeader(): Uint8Array; /** DocInfo (compressed 플래그에 따라 자동 해제) */ readDocInfo(compressed: boolean): Uint8Array; /** /BodyText/SectionN 또는 /ViewText/SectionN (배포용) */ readBodySection(index: number, compressed: boolean, distribution: boolean): Uint8Array | null; /** BodyText 섹션 개수 (Section0 ~ SectionN-1) */ sectionCount(distribution?: boolean): number; /** /BinData/BIN{XXXX}.{ext} 모두 나열 */ listBinData(): { name: string; storageId: number; extension: string; }[]; /** /BinData/BIN{XXXX}.{ext} 의 데이터 (압축되어 있으면 해제 시도) */ readBinData(path: string): Uint8Array | null; /** 디버그 — 모든 stream 경로 */ listStreams(): string[]; }