import type { ComponentInstance, DOMNode } from '@tachui/core'; import type { FragmentMarker } from '@tachui/core/runtime/types'; export interface ModifierBuilderLike { build: () => SSRNodeInput; } export type SSRNodeInput = ComponentInstance | DOMNode | ModifierBuilderLike | string | number | boolean | null | undefined | SSRNodeInput[]; export interface RenderToStringOptions { includeDoctype?: boolean; /** * Controls fragment wrapper emission for nodes marked with `__tachui_fragment`. * Defaults to true. */ interactive?: boolean; /** * Optional context used to collect `
` contributions from asset resolution. */ context?: SSRContext; } export interface SSRContext { /** * Complete `` tag strings to be inserted into ``. */ links: string[]; /** * Complete CSS blocks/rules (for example `@font-face` or `:root{...}`), not declarations. * Entries are wrapped in `