import { CollapseConfig } from './useCollapse'; /** Context passed to header render function */ interface GroupContext { toggle: () => void; isCollapsed: boolean; } type GroupHeader = React.ReactNode | ((context: GroupContext) => React.ReactNode); interface MenuListGroupProps extends CollapseConfig { /** * Initial expanded state for uncontrolled groups. * In accordion mode: registers the group in the init phase via initExpand. * Without accordion: takes precedence over defaultCollapsed when both are set. */ defaultExpanded?: boolean; /** * Header element — rendered always, visible above collapsible content. * * As ReactNode: wrapped in a clickable div that toggles collapse. * As function: receives { toggle, isCollapsed } — consumer decides behavior. */ header: GroupHeader; /** * Group items. Supports ListItem or any flat content. * Nesting groups inside groups is NOT supported — max 2 levels of depth. */ children: React.ReactNode; className?: string; /** * Forces the group to render as expanded regardless of internal or accordion state. * Does NOT affect the accordion store — state is preserved while forced open. * Use for search overrides where all matching groups must be visible simultaneously. */ forceExpanded?: boolean; } declare const MenuListGroup: import('react').NamedExoticComponent; export { MenuListGroup }; export type { MenuListGroupProps, GroupContext };