import type { FafData, ScoreResult } from '../core/types.js'; /** Render project.faf data + its score into a self-contained HTML string. */ export declare function renderProjectHtml(data: FafData, result: ScoreResult, fafPath?: string): string; /** True when `bytes` are a project.html faf rendered: a line that is faf's * description meta (every faf release has written it). */ export declare function hasProjectHtmlMark(bytes: Uint8Array): boolean; /** Options for {@link writeProjectHtml}. */ export interface ProjectHtmlWriteOptions { /** Replace a project.html faf cannot prove it wrote — no faf mark, edited * since faf wrote it, or from before 7.13 — the explicit overwrite * (`--force`). Default: it is refused and left as it is. */ force?: boolean; } /** Write project.html beside project.faf (repo root) — atomically, and never * through a link that leaves `dir` or dangles (SafePathError). The page * carries faf's render hash (``, * the hash of the page without that line). A project.html already there is * replaced only when it is byte for byte what faf last wrote (its hash still * fits); a page edited since, a hand-written page, or a page from before 7.13 * that is not exactly faf's render of `data` is refused (SafePathError * `not-owned`) and left byte for byte, unless `force`. */ export declare function writeProjectHtml(dir: string, data: FafData, result: ScoreResult, fafPath?: string, write?: ProjectHtmlWriteOptions): void; /** @deprecated Use {@link renderProjectHtml}. Removed in the next major. */ export declare const generateProjectHtml: typeof renderProjectHtml;