import { ReactNode } from "react"

 
export type NavItem = {
  title: string
  href: string
  icon?: ReactNode
  isActive?: boolean
  /**
   * Optional prefix used to decide active state when the link target
   * differs from the page's URL pattern (e.g. `/calendar/appointment/list`
   * is the link, but the item should stay active on `/calendar/appointment/{id}`).
   */
  matchPath?: string
  badge?: string | number
  items?: NavSubItem[]
}

export type NavSubItem = {
  title: string
  href: string
  icon?: ReactNode
  isActive?: boolean
  matchPath?: string
}

export type NavGroup = {
  label?: string
  items: NavItem[]
}

export type UserInfo = {
  name: string
  email?: string
  avatar?: string
  initials?: string
  role?: string
}
