import type { SectionRenderer, SectionRendererMap } from '../types.js'; export declare const HeroSection: SectionRenderer; export declare const TextSection: SectionRenderer; export declare const FeatureSection: SectionRenderer; export declare const StatsSection: SectionRenderer; export declare const CtaSection: SectionRenderer; export declare const ArticleBodySection: SectionRenderer; export declare const QuoteSection: SectionRenderer; export declare const AuthorBioSection: SectionRenderer; export declare const RelatedPostsSection: SectionRenderer; export declare const GallerySection: SectionRenderer; /** * Renderer for the `form` section: a heading/intro plus an embedded form. * When the consumer passes a pre-fetched schema via `options.prefetchedForms`, * renders {@link PrentaFormHtml} (zero-JS + WebMCP). Otherwise falls back to * the client {@link PrentaForm} island. */ export declare const FormSection: SectionRenderer; /** * Renderer for the `embed` section: a lazy-loaded provider iframe (YouTube / * Vimeo / Loom) inside a fixed aspect-ratio box so it reserves its space and * never causes layout shift (CLS). The URL is re-parsed through the cms-core * allowlist here too, so an iframe can only ever point at an approved provider * even if a renderer is fed unvalidated content. */ export declare const EmbedSection: SectionRenderer; /** * A break between sections. * * `space` renders nothing visible on purpose — the `
` wrapper's own * padding IS the break, so an empty div would only add a second, unexplained * gap. The rule is `aria-hidden` because a horizontal line between two * sections carries no meaning a screen-reader user needs announced; the * sections' own headings already convey the structure. */ export declare const DividerSection: SectionRenderer; /** * The built-in renderer map. Keys are the canonical `sectionType` ids from * `@prenta/core/page-sections`. A drift guard (see registry tests) * keeps this in lockstep with the cms-core registry so no section type can * exist without a renderer. */ /** * A strip of award / partner logos. * * Every row renders an image slot whether or not an asset has been picked, so * the alt-text audit counts it either way — an empty slot is a slot the * template renders. * * A badge with a link becomes an anchor; one without stays a plain figure. * Wrapping an unlinked logo in an `` would put a focusable element * in the tab order that goes nowhere. */ export declare const BadgesSection: SectionRenderer; /** * Questions and answers. * * A `
` rather than a heading-per-question: these are term/definition pairs, * and emitting a run of `

`s would inject a second outline into the page * that competes with the section headings around it. */ export declare const FaqSection: SectionRenderer; export declare const DEFAULT_SECTION_RENDERERS: SectionRendererMap; //# sourceMappingURL=defaults.d.ts.map