UNPKG

v-selectmenu

Version:

SelectMenu for Vue3, A simple, easier and highly customized menu solution

94 lines (86 loc) 2 kB
import { ComponentProps, ActionProps, DisabledProps, BaseMenuItemSlots, DefaultSlot, TriggerSlot } from './common' declare interface MenuContainer { new (): { $props: ComponentProps $slots: DefaultSlot } } declare const SelectMenuSection: MenuContainer declare const SelectMenuRow: MenuContainer declare const SelectMenuColumn: MenuContainer declare interface DividerProps { /** * @default true */ horizontal?: boolean } declare interface SelectMenuItem { new (): { $props: ComponentProps & ActionProps & DisabledProps $slots: BaseMenuItemSlots } } declare interface SelectMenuBlock { new (): { $props: ComponentProps $slots: BaseMenuItemSlots } } declare interface BodyProps { /** * Whether to hide the menu when clicking on the menu item * @default true */ hideOnItemClick?: boolean } type EmitAction = (event: "action", value: string) => void declare interface SelectMenuBody { new (): { $props: ComponentProps & BodyProps $emit: EmitAction $slots: DefaultSlot } } declare interface ChildLevelItem { new (): { $props: ComponentProps $slots: DefaultSlot & TriggerSlot } } declare interface Divider { new (): { $props: ComponentProps & DividerProps } } declare interface Header { new (): { $props: ComponentProps & ActionProps $slots: BaseMenuItemSlots } } declare const SelectMenuItem: SelectMenuItem declare const SelectMenuBlock: SelectMenuBlock declare const SelectMenuBody: SelectMenuBody declare const SelectMenuChildLevel: ChildLevelItem declare const SelectMenuDivider: Divider declare const SelectMenuHeader: Header declare const SelectMenuSubHeader: Header export { SelectMenuSection, SelectMenuRow, SelectMenuColumn, SelectMenuItem, SelectMenuBlock, SelectMenuBody, SelectMenuChildLevel, SelectMenuDivider, SelectMenuHeader, SelectMenuSubHeader }