import { type JSX, type ReactNode } from 'react';
type SidebarItemTrailingAction = {
    icon: ReactNode;
    hoverIcon?: ReactNode;
    label: string;
    onClick: () => void;
};
type SidebarItem = {
    key: string;
    to: string;
    label: string;
    icon: ReactNode;
    exact?: boolean;
    hoverIcon?: ReactNode;
    trailingIcon?: ReactNode;
    trailingHoverIcon?: ReactNode;
    trailingAction?: SidebarItemTrailingAction;
    childItems?: SidebarChildItem[];
    defaultExpanded?: boolean;
};
type SidebarChildItem = {
    key: string;
    to: string;
    label: string;
    icon?: ReactNode;
};
type NavigationSidebarProps = {
    items: SidebarItem[];
    headerSlot?: ReactNode;
    isCollapsed?: boolean;
    onCollapsedChange?: (nextCollapsed: boolean) => void;
    showCollapseToggle?: boolean;
};
declare const NavigationSidebar: ({ items, headerSlot, isCollapsed: isCollapsedProp, onCollapsedChange, showCollapseToggle, }: NavigationSidebarProps) => JSX.Element;
export { NavigationSidebar };
export type { NavigationSidebarProps, SidebarChildItem, SidebarItem, SidebarItemTrailingAction, };
//# sourceMappingURL=NavigationSidebar.d.ts.map