/** * Page Generator — Creates full page layout components from PageSpec objects. * * Inputs: * - PageSpec (from src/specs/types.ts) — defines layout, sections, responsive breakpoints, etc. * - CodegenContext — provides design system and project context. * * Outputs: * - PageCode: { page: string (TSX), barrel: string (index.ts) } * * Key responsibilities: * 1. Resolve the layout template (sidebar-main, full-width, centered, dashboard, split, marketing) * 2. Build section components with appropriate grid/flex classes per layout type * 3. Emit responsive Tailwind breakpoint classes from spec.responsive * 4. Derive page-level TypeScript prop types from section prop values * 5. Import section components from the generated/ directory */ import type { PageSpec } from "../specs/types.js"; import type { CodegenContext } from "./generator.js"; interface PageCode { page: string; barrel: string; } /** * Generate a React + TypeScript page component from a PageSpec. * * @param spec - The page spec describing layout, sections, responsive config, and metadata. * @param ctx - Codegen context providing design system and project information. * @returns PageCode with `page` (the .tsx source) and `barrel` (index.ts re-export). */ export declare function generatePage(spec: PageSpec, ctx: CodegenContext): PageCode; export {};