import type { ReportResult } from '../../core/surface.js'; import type { PageInput } from '../page.js'; export interface ReportSlices { surface: 'report'; report: { title: string; subtitle: string; date: string; }; sections: { label: string; notesHtml: string; vids: string[]; }[]; views: Record; } /** * The report-shaped payload slices. `shared.conceptIdx` is computed once by * the caller and handed in (the R9 rule the dashboard slice already keeps): * concept ORDER is payload surface — `items` are indices into it — and two * computations would be two chances to disagree. */ export declare function reportSlices(input: PageInput, report: ReportResult, shared: { conceptIdx: Map; }): ReportSlices; /** * The DashboardResult-shaped adapter the SHELL needs around a report: * renderShell reads `input.result` for the page and for * runtimesNeeded's walks (a report has no navigation — an empty list is the * honest answer — and the runtimes the CONTENT needs are found elsewhere: * mermaid on concept diagrams/capture fields, d3 on concept explorers AND * on `graph`/`ref-map` widgets inside `views`, which is why `views` rides * this adapter un-slimmed; the widget walk exists because the review caught * a report graph widget baking without d3). This is an adapter, not a * translation — nothing downstream re-evaluates the report through it. */ export declare function reportRenderResult(report: ReportResult): PageInput['result'];