import type { LucideIcon } from 'lucide-react';
export interface SidebarProps {
    collapsed: boolean;
    onToggleCollapse: () => void;
    currentPath: string;
    onNavigate: (path: string) => void;
    config?: any;
}
export declare function Sidebar({ collapsed, onToggleCollapse, currentPath, onNavigate, config, }: SidebarProps): import("react/jsx-runtime").JSX.Element;
export interface NavItem {
    path: string;
    label: string;
    icon: LucideIcon;
    /**
     * Section header. Items sharing the same `group` are grouped together
     * under a header rendered on first encounter. Items without a `group`
     * render at the top of the nav in document order.
     */
    group?: string;
    /** Indented children rendered immediately after this item. */
    children?: NavItem[];
    /**
     * Optional unread/notification count. Rendered as a red pill (expanded)
     * or a dot (collapsed). Falsy / zero values render nothing.
     */
    badge?: number;
}
/**
 * Build the sidebar nav tree from the CMS config. If no collections are
 * configured, returns the curated `defaultNavItems` tree. When
 * collections ARE configured, page-type collections inherit the
 * Pages / Saved Sections / Templates child block, and every static
 * destination (Media, Forms, SEO, Script Tags, Users, API Keys,
 * Settings) is anchored under the right Content / Settings group.
 */
export declare function buildNavItems(config: any): NavItem[];
//# sourceMappingURL=Sidebar.d.ts.map