import { type AnchorHTMLAttributes, type ComponentPropsWithoutRef, type ReactElement, type ReactNode } from 'react'; import { type VariantProps } from 'class-variance-authority'; type SeparatorVariant = 'chevron' | 'slash'; export interface BreadcrumbProps extends Omit, 'id'> { /** Override the default `aria-label` (falls back to translated `ui.navigation.breadcrumb.label`). */ 'aria-label'?: string; /** Separator glyph between items. @default 'chevron' */ separator?: SeparatorVariant; /** Maximum number of visible crumbs before collapsing. @default 4 */ maxItems?: number; /** Items kept visible at the start. @default 1 */ itemsBeforeCollapse?: number; /** Items kept visible at the end. @default 1 */ itemsAfterCollapse?: number; /** If true, disables collapse behaviour. */ disableCollapse?: boolean; /** * Consumer-supplied instance id, surfaced as `data-component-id` so an * agent / UI bridge can address this instance. */ id?: string; } /** * Imperative handle for agent-readiness. * * Items expose their stable id (`BreadcrumbItem` `id` prop, falling back * to the `BreadcrumbLink` href) and href — never their visible label, * which may contain PHI (see PRS §26 §6.1). */ export interface BreadcrumbHandle { getItems: () => Array<{ id: string; href?: string; }>; navigateTo: (id: string) => void; } declare const Breadcrumb: import("react").ForwardRefExoticComponent>; export interface BreadcrumbListProps extends ComponentPropsWithoutRef<'ol'> { maxItems?: number; itemsBeforeCollapse?: number; itemsAfterCollapse?: number; disableCollapse?: boolean; } declare const BreadcrumbList: import("react").ForwardRefExoticComponent>; export interface BreadcrumbItemProps extends ComponentPropsWithoutRef<'li'> { /** Set automatically by `BreadcrumbList` on the final item. */ isCurrent?: boolean; } declare const BreadcrumbItem: import("react").ForwardRefExoticComponent>; export interface BreadcrumbLinkProps extends AnchorHTMLAttributes { /** Use Radix `Slot` so consumers can pass a router link. */ asChild?: boolean; /** Set by the parent Item when this is the current page. */ isCurrent?: boolean; } declare const BreadcrumbLink: import("react").ForwardRefExoticComponent>; declare const separatorVariants: (props?: ({ variant?: "chevron" | "slash" | null | undefined; } & import("class-variance-authority/types").ClassProp) | undefined) => string; export interface BreadcrumbSeparatorProps extends Omit, 'children'>, VariantProps { children?: ReactNode; } declare const BreadcrumbSeparator: import("react").ForwardRefExoticComponent>; export interface BreadcrumbEllipsisProps extends ComponentPropsWithoutRef<'button'> { /** Hidden crumb elements rendered inside the dropdown menu. */ hiddenItems?: ReactElement[]; } declare const BreadcrumbEllipsis: import("react").ForwardRefExoticComponent>; export { Breadcrumb, BreadcrumbList, BreadcrumbItem, BreadcrumbLink, BreadcrumbSeparator, BreadcrumbEllipsis, }; //# sourceMappingURL=breadcrumb.d.ts.map