import { NavLink } from './main-sidebar-nav-link';
import { NavSection } from './main-sidebar-nav-section';
export type MainSidebarSectionsProps = {
    sections: NavSection[];
    /**
     * Called per link to decide the active state. Receives sibling links so
     * callers can use `getIsLinkActive` (or any sibling-aware logic) without
     * re-scanning `sections` from the outside. Default: each link's `isActive`.
     */
    isActive?: (link: NavLink, siblings: NavLink[]) => boolean;
    className?: string;
};
export declare function MainSidebarSections({ sections, isActive, className }: MainSidebarSectionsProps): import("react/jsx-runtime").JSX.Element;
/**
 * Strict active-path match with sibling-exclusion.
 * - `pathname === link.url` or starts with `link.url + '/'`
 * - Not active if any sibling link has a longer matching url (prevents `/a` lighting while `/a/b` matches).
 */
export declare function getIsLinkActive(link: NavLink, pathname: string, siblings?: NavLink[]): boolean;
