import type { InertiaLinkProps } from '@inertiajs/vue3';
import type { LucideIcon } from 'lucide-vue-next';

export type BreadcrumbItem = {
    title: string;
    href?: string;
};

export type NavItem = {
    title: string;
    permission?: boolean;
    href: NonNullable<InertiaLinkProps['href']>;
    icon?: LucideIcon;
    isActive?: boolean;
    badge?: string;
};

export type NavGroup = {
    title: string;
    permission?: boolean;
    icon?: LucideIcon;
    href: NonNullable<InertiaLinkProps['href']>;
    items: NavItem[];
};

export type NavSection = {
    label: string;
    permission?: boolean;
    groups: NavGroup[];
};
