import { Key } from 'treemate'; import { useMenuChildProps } from './use-menu-child-props'; import { ComputedRef, ExtractPropTypes, Ref } from 'vue'; import { MergedTheme } from '../../_mixins/use-theme'; import type { MenuTheme } from '../styles'; import { OnUpdateValueImpl } from './interface'; import type { MenuSetupProps } from './Menu'; import { FollowerPlacement } from 'vueuc'; export interface MenuInjection { props: MenuSetupProps; mergedCollapsedRef: Ref; invertedRef: Ref; isHorizontalRef: Ref; mergedClsPrefixRef: Ref; mergedValueRef: Ref; mergedExpandedKeysRef: Ref; activePathRef: Ref; mergedThemeRef: Ref>; doSelect: OnUpdateValueImpl; toggleExpand: (key: Key) => void; } export interface SubmenuInjection { paddingLeftRef: Ref; mergedDisabledRef: Ref; } export interface MenuOptionGroupInjection { paddingLeftRef: Ref; } export declare type UseMenuChildProps = ExtractPropTypes; export interface UseMenuChild { dropdownPlacement: ComputedRef; activeIconSize: ComputedRef; maxIconSize: ComputedRef; paddingLeft: ComputedRef; iconMarginRight: ComputedRef; NMenu: MenuInjection; NSubmenu: SubmenuInjection | null; } export declare function useMenuChild(props: UseMenuChildProps): UseMenuChild; export { useMenuChildProps };