/**
 * DevSectionView — the canonical chrome for ANY dev-center section
 * (Roadmap / Delivery / Releases). One component, used in BOTH:
 *
 *   - tabbed `/roadmap-and-releases` (compact title mode, no `hero`)
 *   - full-page `/roadmap`, `/bug-fixes-and-enhancements`, `/releases`
 *     (hero mode with icon + description + back link)
 *
 * Owns: title rendering, the inline search input, the filter pill row,
 * and the URL-param wiring that connects both. The list `children`
 * receive a clean URL contract — they read `?<paramKey>=...` via
 * `useSearchParams()` and refetch on change. No duplicated controls.
 */
import type { ReactNode } from 'react';
import { type OpenframeDevSectionKey } from '../../../utils/dev-sections/openframe-dev-sections';
export interface DevSectionViewProps {
    /** Which section to render — drives title, search, and filter
     *  config via the `OPENFRAME_DEV_SECTIONS` registry. */
    sectionKey: OpenframeDevSectionKey;
    /** When set, renders the rich page-level hero (icon + h1 + description).
     *  Omit for the compact tab-context heading. */
    hero?: {
        /** Pre-rendered icon JSX. Server components render the icon themselves
         *  and pass the element here — function references can't cross the
         *  server→client boundary, but React elements can. */
        icon: ReactNode;
        /** Hero title. Falls back to `OPENFRAME_DEV_SECTIONS[sectionKey].hero.title`
         *  when omitted, so embedders can override the (OpenFrame-specific) default
         *  copy without forking the registry. */
        title?: string;
        description: string;
    };
    /** Optional slot rendered BETWEEN the hero and the search/filter
     *  controls. Use this for an entry-action surface that should sit
     *  above the list (e.g. the Help Center's "Open a new ticket" form).
     *  The slot is wrapped in the same `gap-10` flex column so spacing
     *  matches the surrounding chrome — callers should NOT add their
     *  own top/bottom margin. Renders `null` (no DOM) when omitted. */
    preControls?: ReactNode;
    /** The page-specific list body. Reads URL params written by this
     *  component (search input + filter pills). */
    children: ReactNode;
}
export declare function DevSectionView({ sectionKey, hero, preControls, children }: DevSectionViewProps): import("react").JSX.Element;
//# sourceMappingURL=dev-section-view.d.ts.map