import { default as MenuBarConfigItem } from './MenuBarConfigItem'; import * as React from 'react'; export interface MenuBarConfig { title: string; icon: React.ReactNode; color: string; onHeaderClick: () => void; items: MenuBarConfigItem[]; search?: { query: string; onQueryChange: (query: string) => void; onSubmit?: (query: string) => void; placeholder: string; clearLabel?: string; noMatchesLabel?: string; }; } export type MenuBarProps = { config: MenuBarConfig; activeItemId: string; /** * Predicate evaluated against every child (at any depth) to determine which one is * currently active. The matching child is highlighted and its ancestors are * auto-expanded. Memoize with `useCallback` to avoid unnecessary re-walks. */ isChildActive?: (item: MenuBarConfigItem) => boolean; isOpen: boolean; onOpenChange: (open: boolean) => void; forceMobileLayout?: boolean; collapseLabel?: string; expandLabel?: string; footer?: React.ReactNode; className?: string; /** * Fires whenever a child (at any depth) is clicked, before its own `action` runs. * Use this to track the clicked child id at the parent level, e.g. for active-state * highlighting when the active child cannot be derived from the route alone. */ onChildClick?: (childId: string) => void; /** * Maximum depth rendered as inline expandable accordions. Nodes deeper than this * switch to a drill-down view (tap to descend, back button to ascend). Defaults to 5. */ maxDepth?: number; /** * Label for the drill-down back button shown when descending past `maxDepth`. * Pass a translated string. Defaults to `"Back"`. */ backLabel?: string; /** * When true, collapsed parents display the sum of all descendant `badge` values. * The aggregated badge hides automatically when the parent is expanded, to avoid * duplicating what the children already show. */ aggregateChildBadges?: boolean; /** * When true, expanding one top-level item does not collapse sibling top-level items; * multiple top-level sections may stay open simultaneously. Defaults to false * (classic accordion behaviour). */ allowMultipleTopLevelExpanded?: boolean; }; declare const MenuBar: React.FC; export default MenuBar; //# sourceMappingURL=MenuBar.d.ts.map