import React from "react";
/**
 * Individual breadcrumb item interface
 */
export interface BreadcrumbItem {
    /** The display text for the breadcrumb item */
    label: React.ReactNode;
    /** Optional href for navigation. If not provided, item is treated as current page */
    href?: string;
    /** Optional icon to display at the start (before the label) */
    iconStart?: React.ReactNode;
}
/**
 * Breadcrumbs component variant types
 */
export type BreadcrumbsVariant = "default" | "muted";
/**
 * Theme configuration for Breadcrumbs component
 * Only includes complex styles - simple layout styles are inlined
 */
export interface BreadcrumbsTheme {
    /** Link styles */
    link: string;
    /** Current page (non-link) styles */
    current: string;
    /** Separator styles */
    separator: string;
    /** Ellipsis button styles */
    ellipsis: string;
}
/**
 * Theme overrides interface
 */
export interface BreadcrumbsThemeOverrides {
    link?: string;
    current?: string;
    separator?: string;
    ellipsis?: string;
}
/**
 * Main Breadcrumbs component props
 */
export interface BreadcrumbsProps extends React.HTMLAttributes<HTMLElement> {
    /** Array of breadcrumb items */
    items: BreadcrumbItem[];
    /** Custom separator between items. Defaults to "/" */
    separator?: React.ReactNode;
    /** Maximum number of items to display before collapsing. Defaults to 4 */
    maxItems?: number;
    /** Visual variant of the breadcrumbs */
    variant?: BreadcrumbsVariant;
    /** Custom className for styling overrides */
    className?: string;
    /** Theme overrides */
    theme?: BreadcrumbsThemeOverrides;
    /** Whether to show icons if provided in items */
    showIcons?: boolean;
}
