export { cn } from '../lib/cn.js'; import * as react from 'react'; import { HTMLAttributes, ReactNode } from 'react'; import * as react_jsx_runtime from 'react/jsx-runtime'; import '../hooks/index.js'; import '../config-types-DjhyAKX-.js'; import 'clsx'; interface SectionProps extends HTMLAttributes { /** Unique section identifier for tracking */ id: string; /** Human-readable label shown in analytics */ label?: string; /** Section order (auto-detected if not provided) */ order?: number; /** Full height section (100vh) */ fullHeight?: boolean; /** Additional className */ className?: string; /** Section content */ children?: ReactNode; } /** * Trackable Section Component * * A section that automatically integrates with the Brixon tracking system. * The IntersectionObserver in the tracking SDK observes all elements with * data-section-id attributes. * * @example * ```tsx *
*

Welcome

*
* *
* *
* ``` */ declare const Section: react.ForwardRefExoticComponent>; interface HeroProps { /** Presentation title */ title: string | ReactNode; /** Optional subtitle */ subtitle?: string; /** Optional year badge */ year?: string; /** Client name displayed above title */ clientName?: string; /** Theme variant */ theme?: 'dark' | 'light'; /** Show scroll indicator */ showScrollIndicator?: boolean; /** Additional className */ className?: string; } /** * Hero Section Component * * Full-screen hero section for presentation introductions. * Automatically tracked with data-section-id="hero". * * @example * ```tsx * * ``` */ declare function Hero({ title, subtitle, year, clientName, theme, showScrollIndicator, className, }: HeroProps): react_jsx_runtime.JSX.Element; interface ContentProps { /** Unique section identifier for tracking */ id: string; /** Human-readable label shown in analytics */ label?: string; /** Section headline */ headline: string; /** Optional subline above headline */ subline?: string; /** Optional description text */ description?: string; /** Theme variant */ theme?: 'dark' | 'light'; /** Additional className */ className?: string; /** Additional content (children) */ children?: ReactNode; } /** * Content Section Component * * General-purpose content section for presentations. * Automatically tracked with the provided id. * * @example * ```tsx * * ``` */ declare function Content({ id, label, headline, subline, description, theme, className, children, }: ContentProps): react_jsx_runtime.JSX.Element; interface CTAProps { /** Call-to-action headline */ headline: string; /** Optional subline above headline */ subline?: string; /** Button text */ buttonText?: string; /** Button link href */ buttonHref?: string; /** Button click handler */ onButtonClick?: () => void; /** Theme variant */ theme?: 'dark' | 'light'; /** Additional className */ className?: string; } /** * CTA (Call-to-Action) Section Component * * Final call-to-action section for presentations. * Automatically tracked with data-section-id="cta". * * @example * ```tsx * * ``` */ declare function CTA({ headline, subline, buttonText, buttonHref, onButtonClick, theme, className, }: CTAProps): react_jsx_runtime.JSX.Element; interface PresentationWrapperProps { /** Presentation title for metadata */ title: string; /** Section metadata for tracking */ sections?: SectionConfig[]; /** Presentation content */ children: ReactNode; /** Additional className for the wrapper */ className?: string; } /** * Presentation Wrapper Component * * Provides the root structure for a presentation. * This is a Server Component - no client-side state or hooks. * * The wrapper adds data attributes that the tracking SDK uses * to identify the presentation and its sections. * * @example * ```tsx * * * * * ``` */ declare function PresentationWrapper({ title, sections, children, className, }: PresentationWrapperProps): react_jsx_runtime.JSX.Element; /** * @brixon-group/presentation-sdk * * SDK for building B2B presentations that deploy to the Brixon platform. * Primary user: Claude Code (AI coding assistant) * Secondary user: Human developers */ declare const VERSION = "0.0.1"; /** * Configuration for a presentation */ interface PresentationConfig { /** Unique slug for the presentation URL */ slug: string; /** Display title */ title: string; /** Optional subtitle */ subtitle?: string; /** Client name */ clientName?: string; /** Estimated read time in minutes */ estimatedReadTime?: number; } /** * Section metadata for analytics tracking */ interface SectionConfig { /** Unique section identifier */ id: string; /** Display label for analytics */ label: string; /** Order in presentation */ order: number; /** Section type for styling */ type: 'hero' | 'content' | 'cta' | 'feature' | 'testimonial' | 'pricing'; } export { CTA, type CTAProps, Content, type ContentProps, Hero, type HeroProps, type PresentationConfig as P, PresentationWrapper, type PresentationWrapperProps, type SectionConfig as S, Section, type SectionProps, VERSION as V };