import type { RenderProps } from "@nifrajs/web"; import type { Template } from "./html.js"; /** * A vanilla "component": a plain function from props to a {@link Template}. The page (innermost * chain element) receives the loader {@link RenderProps}; a layout receives `{ children }` - the * already-rendered inner fragment - plus the same render props, mirroring the React/Preact * adapters' `children` contract. */ export type VanillaComponent = (props: RenderProps & { children?: Template; }) => Template; /** * Fold a layout chain (outermost layout → page) into one {@link Template}: render the page with * the loader props, then wrap upward, each layout receiving the inner fragment as `children`. */ export declare function compose(chain: readonly unknown[], props: RenderProps): Template; //# sourceMappingURL=compose.d.ts.map