/** * Dashboard HTML generator — orchestrates all modules into a single self-contained HTML file. * * Composes CSS, shared JS, and tab-specific JS into one HTML string with all data inlined. * Each tool tab (Fitness, Simulation) has subtabs: Sessions, Catalog, Recipes. */ import './tool-tabs-registrations.js'; import type { StoredSession, GraphCatalog } from '@opensip-tools/contracts'; /** * Inputs to the dashboard HTML generator. * * `sessions` is required; everything else has a sensible default * (empty array / null) so a Tool that does not produce a catalog or * recipes can call `generateDashboardHtml({ sessions })` and get a * working dashboard. * * Future tool-shaped data — alarm history, dependency graphs, simulation * traces — will land as new optional fields on this interface rather * than as new positional parameters. That keeps the call site * order-independent and the public API source-stable. */ export interface DashboardInput { sessions: StoredSession[]; checkCatalog?: readonly unknown[]; recipeCatalog?: readonly unknown[]; graphCatalog?: GraphCatalog | null; graphRuleCatalog?: readonly unknown[]; graphRecipeCatalog?: readonly unknown[]; editorProtocol?: string | null; } /** Renders a self-contained HTML dashboard string from sessions and catalog inputs. */ export declare function generateDashboardHtml(input: DashboardInput): string; //# sourceMappingURL=generator.d.ts.map