import { type Ref, type LiHTMLAttributes, type ButtonHTMLAttributes, type AnchorHTMLAttributes } from 'vue';
import PfTooltip from '../Tooltip/Tooltip.vue';
import type { ComponentProps } from 'vue-component-type-helpers';
import { type OUIAProps } from '../../helpers/ouia';
export { MenuItemInjectionKey, type MenuItemProvide } from './common';
interface Props extends OUIAProps, /* @vue-ignore */ Omit {
/** Name of a hidden input submitting the item value with a form */
name?: string;
/** Identifies the item in the menu select event */
value?: string | number;
/** Target navigation link */
to?: string;
/** @beta Flag indicating the item has a checkbox */
check?: boolean;
/** @beta Name of the checkbox */
checkName?: string;
/** Flag indicating whether the item is active */
active?: boolean;
/** Flag indicating if the item causes a load */
loadButton?: boolean;
/** Flag indicating a loading state */
loading?: boolean;
/** Component used to render the menu item */
component?: string;
/** Additional attrs added to the link component */
componentAttrs?: Omit | Omit;
/** Render item as disabled option */
disabled?: boolean;
/** Render item as aria-disabled option: it stays focusable but cannot be selected */
ariaDisabled?: boolean;
/** Content of a tooltip shown on the item. The `tooltip` slot can be used for rich content. */
tooltip?: string;
/** Additional attrs passed to the tooltip, such as its `position` */
tooltipAttrs?: Omit, 'content'>;
/** Description of the menu item */
description?: string;
/** Render external link icon */
externalLink?: boolean;
/** Flag indicating if the option is selected */
selected?: boolean;
/** Flag indicating the item is focused */
focused?: boolean;
/** Flag indicating the item is in danger state */
danger?: boolean;
/** @beta Sub menu direction */
direction?: 'down' | 'up';
/** @beta True if item is on current selection path */
onPath?: boolean;
/** Navigation link download. Only set when the to property is present. */
download?: string;
/** Navigation link target. */
target?: string;
/** Navigation link referrerpolicy. */
referrerpolicy?: AnchorHTMLAttributes['referrerpolicy'];
}
declare const _default: typeof __VLS_export;
export default _default;
declare const __VLS_export: __VLS_WithSlots void;
focused: Ref;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
"update:favorited": (value: boolean | undefined) => any;
} & {
click: (event: Event) => any;
"update:favorited": (value: boolean) => any;
showFlyout: (event?: Event | undefined) => any;
}, string, import("vue").PublicProps, Readonly & Readonly<{
onClick?: ((event: Event) => any) | undefined;
"onUpdate:favorited"?: ((value: boolean) => any) | undefined;
onShowFlyout?: ((event?: Event | undefined) => any) | undefined;
}>, {
component: string;
active: boolean;
selected: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, {
default?: (props?: Record) => any;
icon?: (props?: Record) => any;
description?: (props?: Record) => any;
/** Flyout menu, shown on hover or with the keyboard */
'flyout-menu'?: (props?: Record) => any;
/** Drilldown menu of the item, a pf-drilldown-menu entered when an item with direction "down" is clicked */
'drilldown-menu'?: (props?: Record) => any;
/** Content of a tooltip shown on the item */
tooltip?: (props?: Record) => any;
actions?: (props?: Record) => any;
}>;
type __VLS_WithSlots = T & {
new (): {
$slots: S;
};
};
//# sourceMappingURL=MenuItem.vue.d.ts.map