import type { ExtractionEdge, ExtractionNode } from '../../../contracts/types.js'; interface ExtractionFragment { nodes: ExtractionNode[]; edges: ExtractionEdge[]; } interface PendingReferenceCitation { sourceId: string; lineNumber: number; referenceIndices: number[]; } interface ReferenceEntry { rawIndex: string; referenceIndex: number; summary: string; } export interface PdfExtractionHelpers { createBinaryMetadataAwareFileNode(filePath: string, fileType: 'paper'): ExtractionNode; finalizeNonCodeFragment(fragment: ExtractionFragment): ExtractionFragment; addNode(nodes: ExtractionNode[], seenIds: Set, node: ExtractionNode): void; addEdge(edges: ExtractionEdge[], edge: ExtractionEdge): void; createNode(id: string, label: string, filePath: string, line: number, fileType?: ExtractionNode['file_type']): ExtractionNode; createEdge(source: string, target: string, relation: string, filePath: string, line: number): ExtractionEdge; normalizeLabel(value: string): string; sectionNodeId(filePath: string, label: string, line: number): string; parseNumberedReferenceEntry(text: string): ReferenceEntry | null; addReferenceNodeFromText(nodes: ExtractionNode[], edges: ExtractionEdge[], seenIds: Set, seenEdges: Set, text: string, filePath: string, lineNumber: number, containerId: string): string | null; addCitationEdgesFromText(nodes: ExtractionNode[], edges: ExtractionEdge[], seenIds: Set, seenEdges: Set, text: string, sourceId: string, filePath: string, lineNumber: number): void; addMentionReferenceEdges(edges: ExtractionEdge[], line: string, filePath: string, sourceId: string, lineNumber: number, allowedTargets: ReadonlySet, seenEdges?: Set): void; addInlineReferenceCitationEdgesFromText(edges: ExtractionEdge[], seenEdges: Set, text: string, sourceId: string, filePath: string, lineNumber: number, referenceNodeIdsByIndex: ReadonlyMap, pendingReferenceCitations: PendingReferenceCitation[]): void; flushPendingReferenceCitations(edges: ExtractionEdge[], seenEdges: Set, filePath: string, referenceNodeIdsByIndex: ReadonlyMap, pendingReferenceCitations: readonly PendingReferenceCitation[]): void; } export declare function extractPdfArrayText(raw: string): string; export declare function extractPdfTextOperations(pdfText: string): string[]; export declare function extractPdfPaper(filePath: string, allowedTargets: ReadonlySet, helpers: PdfExtractionHelpers): ExtractionFragment; export declare function extractCompareBaselinePdfText(filePath: string): string; export {};