import { MemberInfo } from '@qite/tide-client';

export interface Language {
  code: string;
  label: string;
}

export interface NavLink {
  label: string;
  href?: string;
}

export interface NavItem {
  label: string;
  href?: string;

  categories?: {
    label: string;
    items: NavLink[];
  }[];

  items?: NavLink[];
}

export interface NavbarProps {
  currentPath?: string;

  logo: React.ReactNode;
  onLogoClick?: () => void;

  topLinks: NavLink[];
  items: NavItem[];

  language: Language;
  languages: Language[];
  onLanguageChange: (lang: string) => void;

  onSearch: (query: string) => void;

  member?: MemberInfo;
  onLogin?: () => void;
  onLogout?: () => void;
}
