bootstrap-vue-next
Version:
BootstrapVueNext is an early and lovely component library for Vue 3 & Nuxt 3 based on Bootstrap 5 and Typescript.
126 lines (125 loc) • 3.99 kB
TypeScript
import { BvCarouselEvent, BvEvent, BvTriggerableEvent } from '../utils';
import { BTableSortBy, TableField, TableRowEvent } from './TableTypes';
export interface showHideEmits {
'hide': [value: BvTriggerableEvent];
'hide-prevented': [value: BvTriggerableEvent];
'hidden': [value: BvTriggerableEvent];
'show': [value: BvTriggerableEvent];
'show-prevented': [value: BvTriggerableEvent];
'shown': [value: BvTriggerableEvent];
'toggle': [value: BvTriggerableEvent];
'toggle-prevented': [value: BvTriggerableEvent];
'cancel': [value: BvTriggerableEvent];
'ok': [value: BvTriggerableEvent];
}
export type BCollapseEmits = showHideEmits;
export interface BDropdownEmits extends showHideEmits {
'split-click': [value: MouseEvent];
}
export interface BModalEmits extends showHideEmits {
backdrop: [value: BvTriggerableEvent];
close: [value: BvTriggerableEvent];
esc: [value: BvTriggerableEvent];
}
export interface BOffcanvasEmits extends showHideEmits {
close: [value: BvTriggerableEvent];
esc: [value: BvTriggerableEvent];
backdrop: [value: BvTriggerableEvent];
breakpoint: [value: BvTriggerableEvent, opened: boolean];
}
export interface BPopoverEmits extends showHideEmits {
'pointerleave': [value: BvTriggerableEvent];
'blur': [value: BvTriggerableEvent];
'click-outside': [value: BvTriggerableEvent];
'close-on-hide': [value: BvTriggerableEvent];
}
export interface BToastEmits extends showHideEmits {
'close': [value: BvTriggerableEvent];
'close-countdown': [value: number];
}
export interface BTableEmits<Items> extends BTableLiteEmits<Items> {
'filtered': [value: Items[]];
'row-selected': [value: Items];
'row-unselected': [value: Items];
'sorted': [value: BTableSortBy];
'change': [value: Items[]];
}
export interface BTableLiteEmits<Items> {
'head-clicked': [key: string, field: TableField<Items>, event: MouseEvent, isFooter: boolean];
'row-clicked': TableRowEvent<Items>;
'row-dblclicked': TableRowEvent<Items>;
'row-contextmenu': TableRowEvent<Items>;
'row-hovered': TableRowEvent<Items>;
'row-unhovered': TableRowEvent<Items>;
'row-middle-clicked': TableRowEvent<Items>;
}
export type BAlertEmits = BToastEmits;
export type BAccordionItemEmits = BCollapseEmits;
export type BAvatarEmits = {
'click': [value: MouseEvent];
'img-error': [value: Event];
};
export type BBreadcrumbItemEmits = {
click: [value: MouseEvent];
};
export type BButtonEmits = {
click: [value: MouseEvent];
};
export type BCloseButtonEmits = {
click: [value: MouseEvent];
};
export type BCarouselEmits = {
'slide': [value: BvCarouselEvent];
'slid': [value: BvCarouselEvent];
'prev-click': [value: MouseEvent];
'next-click': [value: MouseEvent];
};
export type BDropdownItemEmits = {
click: [value: MouseEvent];
};
export type BDropdownItemButtonEmits = {
click: [value: MouseEvent];
};
export type BFormSpinbuttonEmits = {
change: [value: number | null];
};
export type BFormTagEmits = {
remove: [value: string];
};
export type BFormTagsEmits = {
'blur': [value: FocusEvent];
'focus': [value: FocusEvent];
'focusin': [value: FocusEvent];
'focusout': [value: FocusEvent];
'tag-state': [...args: string[][]];
};
export type BLinkEmits = {
click: [value: MouseEvent];
};
export type BNavFormEmits = {
submit: [value: Event];
};
export type BNavItemEmits = {
click: [value: MouseEvent];
};
export type BNavbarToggleEmits = {
click: [value: MouseEvent];
};
export type BOverlayEmits = {
click: [value: MouseEvent];
hidden: [];
shown: [];
};
export type BPaginationEmits = {
'page-click': [event: BvEvent, pageNumber: number];
};
export type BTabsEmits = {
'activate-tab': [
newTabId: string,
preTabId: string,
newTabIndex: number,
prevTabIndex: number,
event: BvEvent
];
};
export type BTooltipEmits = BPopoverEmits;