/**
* `@prenta/sections-react` β the public renderer for Prenta's
* canonical page-content contract (ADR 0001): a document's ordered
* `PageSection[]` (`data.sections`).
*
* Quick start (a Next.js Server Component):
*
* ```tsx
* import { Sections } from '@prenta/sections-react'
*
* export default async function Page() {
* const doc = await client.resolve('/about')
* return
* }
* ```
*
* Override a built-in section type for a custom design β either per render:
*
* ```tsx
*
* ```
*
* β¦or globally at app startup:
*
* ```ts
* import { registerSectionRenderer } from '@prenta/sections-react'
* registerSectionRenderer('hero', MyHero)
* ```
*/
export { Sections, PostHeader } from './Sections.js';
export type { SectionsProps, PostHeaderProps } from './Sections.js';
export { registerSectionRenderer, registerSectionRenderers, unregisterSectionRenderer, resetSectionRenderers, getSectionRenderer, registeredSectionTypes, DEFAULT_SECTION_RENDERERS, } from './registry.js';
export { HeroSection, TextSection, FeatureSection, StatsSection, BadgesSection, FaqSection, CtaSection, FormSection, ArticleBodySection, QuoteSection, AuthorBioSection, RelatedPostsSection, GallerySection, EmbedSection, } from './components/defaults.js';
export { WidgetEmbedSection } from './components/WidgetEmbedSection.js';
export { PrentaForm } from './PrentaForm.js';
export type { PrentaFormProps } from './PrentaForm.js';
export { AttributionTracker, attributionConsentAllowed, captureAttributionIfAllowed, } from './attribution.js';
export { PrentaFormHtml } from './PrentaFormHtml.js';
export type { PrentaFormHtmlProps } from './PrentaFormHtml.js';
export { webMcpFormAttributes, webMcpFieldAttribute } from './webmcp.js';
export { SiteNav } from './SiteNav.js';
export type { SiteNavProps, SiteNavItem } from './SiteNav.js';
export { coercePublicForm, fieldControl, htmlInputType, initialValues, firstMissingRequired, buildSubmitBody, } from './forms.js';
export type { PublicForm, PublicFormField, FieldControl, SubmitBodyArgs } from './forms.js';
/**
* Section wrapper classes. Exported because the CMS editor canvas wraps
* sections itself rather than using ``, and its padding must match
* this exactly β a section padded differently in the preview than on the site
* makes the reflow guard's line counts wrong. A parity test in @prenta/admin
* asserts they agree.
*/
export { paddingClass, backgroundClass, isDark } from './utils.js';
export { Button } from './primitives.js';
export { defaultRenderImage, Img } from './image.js';
export { createLcpController } from './lcp.js';
export type { LcpController } from './lcp.js';
export { FULL_WIDTH_SIZES, CONTENT_WIDTH_SIZES, FEATURE_SIZES, gallerySizes } from './sizes.js';
export type { PublicSection, PostContext, RenderOptions, ResolvedRenderOptions, RenderImage, RenderImageProps, SectionRenderer, SectionRendererProps, SectionRendererMap, } from './types.js';
//# sourceMappingURL=index.d.ts.map