@ark-ui/vue
Version:
A collection of unstyled, accessible UI components for Vue, utilizing state machines for seamless interaction.
49 lines (48 loc) • 2.39 kB
TypeScript
import { RenderStrategyProps } from '../../utils';
import { PolymorphicProps } from '../factory';
import { RootEmits, RootProps } from './menu.types';
import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
import { SelectionDetails, OpenChangeDetails, HighlightChangeDetails } from '@zag-js/menu';
import { FocusOutsideEvent, InteractOutsideEvent, PointerDownOutsideEvent } from '@zag-js/interact-outside';
export interface MenuRootBaseProps extends RootProps, RenderStrategyProps, PolymorphicProps {
}
export interface MenuRootProps extends MenuRootBaseProps {
}
export interface MenuRootEmits extends RootEmits {
}
declare const _default: __VLS_WithTemplateSlots< DefineComponent<MenuRootProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
select: (details: SelectionDetails) => any;
openChange: (details: OpenChangeDetails) => any;
"update:open": (open: boolean) => any;
focusOutside: (event: FocusOutsideEvent) => any;
interactOutside: (event: InteractOutsideEvent) => any;
pointerDownOutside: (event: PointerDownOutsideEvent) => any;
highlightChange: (details: HighlightChangeDetails) => any;
"update:highlightedValue": (highlightedValue: string | null) => any;
escapeKeyDown: (event: KeyboardEvent) => any;
}, string, PublicProps, Readonly<MenuRootProps> & Readonly<{
onSelect?: ((details: SelectionDetails) => any) | undefined;
onOpenChange?: ((details: OpenChangeDetails) => any) | undefined;
"onUpdate:open"?: ((open: boolean) => any) | undefined;
onFocusOutside?: ((event: FocusOutsideEvent) => any) | undefined;
onInteractOutside?: ((event: InteractOutsideEvent) => any) | undefined;
onPointerDownOutside?: ((event: PointerDownOutsideEvent) => any) | undefined;
onHighlightChange?: ((details: HighlightChangeDetails) => any) | undefined;
"onUpdate:highlightedValue"?: ((highlightedValue: string | null) => any) | undefined;
onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
}>, {
open: boolean;
defaultOpen: boolean;
closeOnSelect: boolean;
composite: boolean;
loopFocus: boolean;
typeahead: boolean;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>, {
default?(_: {}): any;
}>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
new (): {
$slots: S;
};
};