import type { LineReadResult, OffsetReadResult, ParsedMarkdownDocument } from "./types.js"; /** * Skim a single document: extract heading hierarchy, frontmatter, title, word/char count. * * @param projectRoot - Trusted project root. * @param filePath - Project-root-relative file path. * @returns Parsed document metadata. */ export declare function skimDocument(projectRoot: string, filePath: string): ParsedMarkdownDocument; /** * Skim all supported-format documents in a directory recursively. * * @param projectRoot - Trusted project root. * @param dirPath - Project-root-relative directory path. * @param format - Optional format filter (e.g., "md", "json"). * @returns Array of parsed document metadata, sorted by relative path. */ export declare function skimDirectory(projectRoot: string, dirPath: string, format?: string): ParsedMarkdownDocument[]; /** * Read a file's full content with optional character limit. * * @param projectRoot - Trusted project root. * @param filePath - Project-root-relative file path. * @param maxCharacters - Maximum characters to return (default 20000). * @returns Read result with content and truncation signal. */ export declare function readDocument(projectRoot: string, filePath: string, maxCharacters?: number): { path: string; content: string; characterCount: number; truncated: boolean; }; /** * Read a specific section by heading. * * @param projectRoot - Trusted project root. * @param filePath - Project-root-relative file path. * @param heading - Heading text to find (exact match). * @returns Section content or null if heading not found. */ export declare function readSectionByHeading(projectRoot: string, filePath: string, heading: string): { path: string; content: string | null; heading: string; }; /** * Read a specific contiguous range of 1-indexed lines from any text file. * * @param projectRoot - Trusted project root. * @param filePath - Project-root-relative file path. * @param startLine - One-based start line. * @param endLine - One-based end line (optional, defaults to startLine). * @returns Line range read result. */ export declare function readLines(projectRoot: string, filePath: string, startLine: number, endLine?: number): LineReadResult; /** * Read a character slice from a file at a given offset. * * @param projectRoot - Trusted project root. * @param filePath - Project-root-relative file path. * @param offset - Zero-based character offset. * @param limit - Maximum characters to return. * @returns Offset read result. */ export declare function readOffset(projectRoot: string, filePath: string, offset: number, limit: number): OffsetReadResult; //# sourceMappingURL=read-ops.d.ts.map