veui
Version:
Baidu Enterprise UI for Vue.js.
44 lines (36 loc) • 723 B
TypeScript
import {
VeuiDefineComponent,
VeuiDefineInstance,
LooseObject,
UiMixin,
LinkTo
} from '../common'
export type Item = {
label: string
type?: 'text' | 'link'
to?: LinkTo
native?: boolean
}
type Props<T extends Item = Item> = {
routes: Array<T>
}
type Emits = {
redirect(event: MouseEvent, item: LooseObject<Item>, index: number): void
}
type Mixins = UiMixin
type Slots = {
default(): unknown
item(
scope: { route: LooseObject<Item>; index: number } & LooseObject<Item>
): unknown
separator(): unknown
}
type Breadcrumb = VeuiDefineComponent<{
new <T extends Item>(...args: any[]): VeuiDefineInstance<
Props<T>,
Emits,
Slots,
Mixins
>
}>
export default Breadcrumb