/**
 * Local read-only HTML and Markdown report exports for projects, plans, runs,
 * evidence, roadmaps, and retrospectives. Offline static output with redaction.
 */
import type { Database } from "bun:sqlite";
export declare const REPORT_EXPORT_SCHEMA = "todos.report_export.v1";
export declare const REPORT_KINDS: readonly ["project", "plan", "run", "evidence", "roadmap", "retrospective"];
export type ReportKind = (typeof REPORT_KINDS)[number];
export declare const REPORT_FORMATS: readonly ["markdown", "html"];
export type ReportFormat = (typeof REPORT_FORMATS)[number];
export interface ReportSection {
    id: string;
    title: string;
    lines: string[];
}
export interface ReportExportData {
    schema_version: typeof REPORT_EXPORT_SCHEMA;
    kind: ReportKind;
    title: string;
    exported_at: string;
    read_only: true;
    redacted: boolean;
    project_id: string | null;
    plan_id: string | null;
    run_record_id: string | null;
    task_id: string | null;
    sections: ReportSection[];
}
export interface BuildReportExportInput {
    kind: ReportKind;
    project_id?: string;
    plan_id?: string;
    run_record_id?: string;
    task_id?: string;
    days?: number;
    redact?: boolean;
    exported_at?: string;
}
export declare function buildReportExportData(input: BuildReportExportInput, db?: Database): ReportExportData;
export declare function formatReportMarkdown(data: ReportExportData): string;
export declare function formatReportHtml(data: ReportExportData): string;
export declare function formatReportExport(data: ReportExportData, format: ReportFormat): string;
export declare function writeReportExport(data: ReportExportData, format: ReportFormat, path: string): void;
export declare function exportReport(input: BuildReportExportInput & {
    format: ReportFormat;
    path: string;
}, db?: Database): ReportExportData;
export declare function getReportExportDocs(): string;
//# sourceMappingURL=report-exports.d.ts.map