import type { VNode } from 'vue'; import type { AppConfig } from '@nuxt/schema'; import theme from '#build/b24ui/breadcrumb'; import type { AvatarProps, IconComponent, LinkProps } from '../types'; import type { DynamicSlots, GetItemKeys } from '../types/utils'; import type { ComponentConfig } from '../types/tv'; type Breadcrumb = ComponentConfig; export interface BreadcrumbItem extends Omit { label?: string; /** * @IconComponent */ icon?: IconComponent; avatar?: AvatarProps; slot?: string; class?: any; b24ui?: Pick; [key: string]: any; } export interface BreadcrumbProps { /** * The element or component this component should render as. * @defaultValue 'nav' */ as?: any; items?: T[]; /** * The icon to use as a separator. * @defaultValue icons.chevronRight * @IconComponent */ separatorIcon?: IconComponent; /** * @defaultValue 'air-selection' */ color?: Breadcrumb['variants']['color']; /** * The key used to get the label from the item. * @defaultValue 'label' */ labelKey?: GetItemKeys; class?: any; b24ui?: Breadcrumb['slots']; } type SlotProps = (props: { item: T; index: number; active?: boolean; b24ui: Breadcrumb['b24ui']; }) => VNode[]; export type BreadcrumbSlots = { 'item'?: SlotProps; 'item-leading'?: SlotProps; 'item-label'?: (props: { item: T; index: number; active: boolean; }) => VNode[]; 'item-trailing'?: (props: { item: T; index: number; active: boolean; }) => VNode[]; 'separator'?: (props: { b24ui: Breadcrumb['b24ui']; }) => VNode[]; } & DynamicSlots & DynamicSlots; declare const _default: typeof __VLS_export; export default _default; declare const __VLS_export: (__VLS_props: NonNullable>["props"], __VLS_ctx?: __VLS_PrettifyLocal>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable>["expose"], __VLS_setup?: Promise<{ props: import("vue").PublicProps & __VLS_PrettifyLocal> & (typeof globalThis extends { __VLS_PROPS_FALLBACK: infer P; } ? P : {}); expose: (exposed: {}) => void; attrs: any; slots: BreadcrumbSlots; emit: {}; }>) => import("vue").VNode & { __ctx?: Awaited; }; type __VLS_PrettifyLocal = (T extends any ? { [K in keyof T]: T[K]; } : { [K in keyof T as K]: T[K]; }) & {};