import { InjectionKey, Ref } from 'vue'; export interface NavItem { /** Stable identifier (route name, app slug). Surfaced as data-name. */ name: string; /** Visible label. */ text: string; /** FA6 icon name (no `far ` prefix; CIcon resolves it). */ icon: string; /** Optional route params, ignored by the primitive but useful to consumers. */ params?: Record; /** Treat as active when the current route name matches any of these. Used by admin. */ activeRoutes?: string[]; /** Hard override of active detection (wins over `activeRoutes`). */ active?: boolean; /** Disable click. */ disabled?: boolean; } /** * Provided by CSideBar to its descendants so CSideBarItem can adapt to * the collapsed/expanded layout without needing the prop drilled. */ export interface SideBarContext { collapsed: Ref; } export declare const SIDE_BAR_CONTEXT_KEY: InjectionKey;