/** * Shared utilities for per-artifact-type renderers. * * Private to the renderers/ directory — not re-exported from registry.ts. * All functions are pure (no I/O, no side effects). * * Sprint 11 — colocated in renderers/ per mechanisms/ precedent. */ /** * Apply a line cap to rendered content. * If content exceeds maxLines, truncates with the canonical truncation marker: * `... : for full content>` * When no source path is available, falls back to: * `... ` */ export declare function applyLineCap(content: string, maxLines: number, sourcePath?: string): string; /** * Extract the first H1 heading from markdown content. * Returns null if no H1 is found. */ export declare function extractH1(content: string): string | null; /** * Count list items (lines starting with `- `) under a given section heading. * Stops counting when another heading of equal or higher level is encountered. */ export declare function countSectionItems(content: string, sectionName: string): number; /** * Count the number of sections (headings) at level 2 (`## `) in the content. */ export declare function countH2Sections(content: string): number; /** * Extract the first N non-blank lines after a line matching the given separator pattern. * If separator is not found, returns the first N non-blank lines of the content. */ export declare function firstNNonBlankAfter(content: string, n: number, separatorPattern: RegExp): string[]; /** * Parse an inline count from a markdown line matching a pattern. * Returns null if not found. */ export declare function parseInlineCount(content: string, pattern: RegExp): number | null; /** * Extract content and path from an artifact. * Handles shapes: { content }, { text }, { path, content }, { path } * Does NOT perform file I/O — mechanisms must preload content. */ export declare function extractMarkdownContent(artifact: unknown): { content: string; path: string | undefined; }; //# sourceMappingURL=_util.d.ts.map