import type { AtomicTextRange, SemanticChunker } from '../chunker/index.js'; import type { EmbedderInterface } from '../chunker/semantic-chunker.js'; import type { DocumentParser } from '../parser/index.js'; import type { FilteredTextFragment } from '../parser/pdf-filter.js'; import type { ProcessedVisualRegion } from '../pdf-visual/types.js'; import type { HeadingAnchor, SourceMap } from '../utils/source-context.js'; import type { QualityProfile } from '../utils/visual-profile.js'; import type { VisualAttachment } from '../vectordb/types.js'; import { buildChunksAndEmbeddings } from './compute.js'; export interface VisualPdfParser { parsePdfPages: DocumentParser['parsePdfPages']; } export interface CaptionerConfig { profile: QualityProfile; cacheDir: string; device?: string | undefined; } /** Collaborators one visual PDF ingest run needs, injected as a unit. */ export interface VisualIngestCollaborators { parser: VisualPdfParser; chunker: SemanticChunker; embedder: EmbedderInterface; } export interface PrepareVisualPdfChunksOptions { images: boolean; captioner?: CaptionerConfig; } export interface PrepareVisualPdfChunksResult { chunks: Awaited>['chunks']; embeddings: number[][]; title: string | null; text: string; atomicRanges: AtomicTextRange[]; visualAttachments: Map; omittedImageCount: number; } export interface OrderedVisualPage { headings?: HeadingAnchor[]; pageNum: number; text: string; textFragments: readonly FilteredTextFragment[]; } export interface OrderedVisualRegion extends ProcessedVisualRegion { visualIndex: number; anchorOffset: number; captionRange?: AtomicTextRange; } export interface OrderedVisualDocument { sourceMap?: SourceMap; text: string; atomicRanges: AtomicTextRange[]; regions: OrderedVisualRegion[]; } export declare function buildOrderedVisualDocument(pages: readonly OrderedVisualPage[], processedRegions: readonly ProcessedVisualRegion[]): OrderedVisualDocument; export declare function prepareVisualPdfChunks(filePath: string, collaborators: VisualIngestCollaborators, options: PrepareVisualPdfChunksOptions): Promise; //# sourceMappingURL=visual.d.ts.map