import { Color, Size, stickerOptions } from '../../types'; import { FontStyleTypeModel, ThemeTypesModel } from '../../Themes/theme_types'; type availableColor = Color.dark | Color.green | Color.blue; type availableSize = Size.s | Size.m; type kindInteraction = 'mouse' | 'keyboard'; interface BreadcrumbItemProps { title: string; path: string; truncated?: boolean; maxWidth?: number; } interface visibleItem { title: string; path: string; role: string; maxWidth?: number; } interface truncatedItem { title: string; path: string; } interface BreadcrumbsProps { items: BreadcrumbItemProps[]; color?: availableColor; size?: availableSize; truncatePosition?: number; isInverse?: boolean; isResponsive?: boolean; stickerOptions?: stickerOptions; customClass?: string; followLink?: boolean; theme?: ThemeTypesModel; onActiveLink: (path: string) => void; } interface NavItemProps { styled: ModelView; color: availableColor; size: availableSize; dayTheme: 'day' | 'night'; maxWidth?: number; type: 'defaultColor' | 'activeColor'; lastOne: boolean; showOutline: boolean; } interface styledDay { defaultColor: string; defaultHover: string; defaultPressed: string; activeColor: string; } interface styledColor { day: styledDay; night: styledDay; } interface ModelView { style: { dark: styledColor; green: styledColor; blue: styledColor; }; size: { s: { dividerOffset: number; font: FontStyleTypeModel; }; m: { dividerOffset: number; font: FontStyleTypeModel; }; }; } export { BreadcrumbItemProps, BreadcrumbsProps, ModelView, NavItemProps, truncatedItem, visibleItem, kindInteraction, };