import type { ChunkOptions, ChunkedDocument } from './types'; import type { ExtractedContent } from '../extraction/types'; /** * Hybrid chunking engine that splits documents into optimal chunks for RAG embeddings */ export declare class Chunker { private options; constructor(options: ChunkOptions); /** * Main entry point - dispatches to appropriate chunking strategy based on content type */ chunkDocument(documentId: string, content: ExtractedContent): ChunkedDocument; /** * Semantic chunking by headers - preserves document structure */ private chunkMarkdown; /** * Semantic chunking by functions/classes - preserves code structure */ private chunkCode; /** * Fixed-size chunking with sliding window overlap */ private chunkPlainText; /** * Helper to split text that exceeds maxTokens while preserving word boundaries */ private splitLargeText; /** * Rough token estimation (~1.3 tokens per word, ~4 chars per token) */ private estimateTokens; } //# sourceMappingURL=chunker.d.ts.map