import type { ControlSize } from "@charcuterie/tokens";
import type { Placement } from "@floating-ui/react";
import type { ReactNode } from "react";
import type { NavItem } from "../Nav/navItems.ts";
/**
* @deprecated Use `Nav`'s `NavItem`. Removed in the next major.
*/
export type NavBarItem = NavItem;
/**
* @deprecated Use `NavProps` with `layout="bar"`. Removed in the
* next major.
*/
export type NavBarProps = {
className?: string;
currentHref?: string;
isMenuVisible?: boolean;
items: readonly NavBarItem[];
label: string;
menuAlign?: "end" | "start";
menuIcon?: ReactNode;
menuLabel?: string;
menuPlacement?: Placement;
size?: ControlSize;
};
/**
* @deprecated Use `Nav` with `layout="bar"` — which is `Nav`'s
* default, so `` is the
* whole migration. **Removed in the next major.**
*
* This is now a thin adapter over `Nav` and keeps every behaviour it
* shipped with: the measured whole-row fold, the real `` in
* both the bar and the panel, and the same props under the same
* names. Only two things differ, and both are fixes:
*
* 1. `currentHref` is `activeHref` on `Nav`.
* 2. **Two items can no longer both be current.** This component
* asked the question once per item, so a bar holding `/settings`
* and `/settings/labels` marked *both* while the reader was on
* the deeper one — against its own decision record, which says a
* nav with two current items has stopped saying anything. `Nav`
* takes the deepest match. If an app was relying on the parent
* also lighting up, it was relying on a defect.
*
* ## Why it went away
*
* It answered half the question. A horizontal row that folds is one
* shape an app's destinations take; a labelled side rail, a
* collapsed icon rail and a Narrow-View bottom strip are the others,
* and this component could not become any of them — so an app that
* wanted a rail was back to hand-rolling, which is the state this
* was built to end. `Nav` is the same list drawn in whichever of the
* five places fits, and `useNavLayout` is the width rule that says
* which.
*/
export declare const NavBar: ({ className, currentHref, isMenuVisible, items, label, menuAlign, menuIcon, menuLabel, menuPlacement, size, }: NavBarProps) => ReactNode;
//# sourceMappingURL=NavBar.d.ts.map