import type { ReactNode } from 'react'; /** * Props para NavigationRailItem */ export interface NavigationRailItemProps { /** * Icono a mostrar en el item */ icon: ReactNode; /** * Label del item de navegación */ label: string; /** * Si el item está seleccionado actualmente * @default false */ selected?: boolean; /** * Si el item está deshabilitado * @default false */ disabled?: boolean; /** * Mostrar badge de notificación (dot rojo) * @default false */ badge?: boolean; /** * Número a mostrar en el badge (reemplaza el dot) */ badgeCount?: number; /** * Handler para evento click */ onClick?: () => void; /** * Label para accesibilidad (ARIA) */ ariaLabel?: string; /** * ID único del item (para navegación) */ id?: string; } /** * Props del componente NavigationRail */ export interface NavigationRailProps { /** * Items de navegación a mostrar */ items: NavigationRailItemProps[]; /** * Alineación vertical de los items * - `top`: Items alineados arriba (debajo del FAB) * - `center`: Items centrados verticalmente * - `bottom`: Items alineados abajo * @default 'top' */ alignment?: 'top' | 'center' | 'bottom'; /** * Mostrar botón FAB (Floating Action Button) en la parte superior * @default false */ showFab?: boolean; /** * Icono del botón FAB */ fabIcon?: ReactNode; /** * Handler para click en el FAB */ onFabClick?: () => void; /** * Label del FAB para accesibilidad */ fabAriaLabel?: string; /** * Clases CSS adicionales para el contenedor */ className?: string; /** * ID del item seleccionado actualmente */ selectedId?: string; /** * Handler cuando se selecciona un item */ onItemSelect?: (id: string) => void; } //# sourceMappingURL=NavigationRail.types.d.ts.map