import type { Key, TreeNode } from 'treemate'; import type { PropType, Ref } from 'vue'; import type { FollowerPlacement } from 'vueuc'; import type { ExtractPublicPropTypes, MaybeArray } from '../../_utils'; import type { DropdownMenuProps, DropdownMixedOption, NodeProps, OnUpdateValue, OnUpdateValueImpl, RenderIcon, RenderIconImpl, RenderLabel, RenderLabelImpl, RenderOption, RenderOptionImpl } from './interface'; import type { DropdownSize } from './public-types'; export interface DropdownInjection { renderLabelRef: Ref; renderIconRef: Ref; renderOptionRef: Ref; menuPropsRef: Ref; nodePropsRef: Ref; hoverKeyRef: Ref; keyboardKeyRef: Ref; lastToggledSubmenuKeyRef: Ref; pendingKeyPathRef: Ref; activeKeyPathRef: Ref; animatedRef: Ref; mergedShowRef: Ref; labelFieldRef: Ref; childrenFieldRef: Ref; doSelect: OnUpdateValueImpl; doUpdateShow: (value: boolean) => void; } export declare const dropdownProps: { readonly theme: PropType; }>; }>>; readonly themeOverrides: PropType; }>; }>>>; readonly builtinThemeOverrides: PropType; }>; }>>>; readonly animated: { readonly type: BooleanConstructor; readonly default: true; }; readonly keyboard: { readonly type: BooleanConstructor; readonly default: true; }; readonly size: PropType; readonly inverted: BooleanConstructor; readonly placement: { readonly type: PropType; readonly default: "bottom"; }; readonly onSelect: PropType>; readonly options: { readonly type: PropType; readonly default: () => never[]; }; readonly menuProps: PropType; readonly showArrow: BooleanConstructor; readonly renderLabel: PropType; readonly renderIcon: PropType; readonly renderOption: PropType; readonly nodeProps: PropType; readonly labelField: { readonly type: StringConstructor; readonly default: "label"; }; readonly keyField: { readonly type: StringConstructor; readonly default: "key"; }; readonly childrenField: { readonly type: StringConstructor; readonly default: "children"; }; readonly value: PropType; readonly show: { type: PropType; default: undefined; }; readonly defaultShow: BooleanConstructor; readonly trigger: { type: PropType; default: string; }; readonly delay: { type: NumberConstructor; default: number; }; readonly duration: { type: NumberConstructor; default: number; }; readonly raw: BooleanConstructor; readonly x: NumberConstructor; readonly y: NumberConstructor; readonly arrowPointToCenter: BooleanConstructor; readonly disabled: BooleanConstructor; readonly getDisabled: PropType<() => boolean>; readonly displayDirective: { type: PropType<"if" | "show">; default: string; }; readonly arrowClass: StringConstructor; readonly arrowStyle: PropType; readonly arrowWrapperClass: StringConstructor; readonly arrowWrapperStyle: PropType; readonly flip: { type: BooleanConstructor; default: boolean; }; readonly width: { type: PropType; default: undefined; }; readonly overlap: BooleanConstructor; readonly keepAliveOnHover: { type: BooleanConstructor; default: boolean; }; readonly zIndex: NumberConstructor; readonly to: { type: PropType; default: undefined; }; readonly scrollable: BooleanConstructor; readonly contentClass: StringConstructor; readonly contentStyle: PropType; readonly headerClass: StringConstructor; readonly headerStyle: PropType; readonly footerClass: StringConstructor; readonly footerStyle: PropType; readonly onClickoutside: PropType<(e: MouseEvent) => void>; readonly 'onUpdate:show': PropType void>>; readonly onUpdateShow: PropType void>>; readonly internalDeactivateImmediately: BooleanConstructor; readonly internalSyncTargetWithParent: BooleanConstructor; readonly internalInheritedEventHandlers: { type: PropType; default: () => never[]; }; readonly internalTrapFocus: BooleanConstructor; readonly internalExtraClass: { type: PropType; default: () => never[]; }; readonly onShow: PropType void> | undefined>; readonly onHide: PropType void> | undefined>; readonly arrow: { type: PropType; default: undefined; }; readonly minWidth: NumberConstructor; readonly maxWidth: NumberConstructor; }; export type DropdownProps = ExtractPublicPropTypes; declare const _default: import("vue").DefineComponent; }>; }>>; readonly themeOverrides: PropType; }>; }>>>; readonly builtinThemeOverrides: PropType; }>; }>>>; readonly animated: { readonly type: BooleanConstructor; readonly default: true; }; readonly keyboard: { readonly type: BooleanConstructor; readonly default: true; }; readonly size: PropType; readonly inverted: BooleanConstructor; readonly placement: { readonly type: PropType; readonly default: "bottom"; }; readonly onSelect: PropType>; readonly options: { readonly type: PropType; readonly default: () => never[]; }; readonly menuProps: PropType; readonly showArrow: BooleanConstructor; readonly renderLabel: PropType; readonly renderIcon: PropType; readonly renderOption: PropType; readonly nodeProps: PropType; readonly labelField: { readonly type: StringConstructor; readonly default: "label"; }; readonly keyField: { readonly type: StringConstructor; readonly default: "key"; }; readonly childrenField: { readonly type: StringConstructor; readonly default: "children"; }; readonly value: PropType; readonly show: { type: PropType; default: undefined; }; readonly defaultShow: BooleanConstructor; readonly trigger: { type: PropType; default: string; }; readonly delay: { type: NumberConstructor; default: number; }; readonly duration: { type: NumberConstructor; default: number; }; readonly raw: BooleanConstructor; readonly x: NumberConstructor; readonly y: NumberConstructor; readonly arrowPointToCenter: BooleanConstructor; readonly disabled: BooleanConstructor; readonly getDisabled: PropType<() => boolean>; readonly displayDirective: { type: PropType<"if" | "show">; default: string; }; readonly arrowClass: StringConstructor; readonly arrowStyle: PropType; readonly arrowWrapperClass: StringConstructor; readonly arrowWrapperStyle: PropType; readonly flip: { type: BooleanConstructor; default: boolean; }; readonly width: { type: PropType; default: undefined; }; readonly overlap: BooleanConstructor; readonly keepAliveOnHover: { type: BooleanConstructor; default: boolean; }; readonly zIndex: NumberConstructor; readonly to: { type: PropType; default: undefined; }; readonly scrollable: BooleanConstructor; readonly contentClass: StringConstructor; readonly contentStyle: PropType; readonly headerClass: StringConstructor; readonly headerStyle: PropType; readonly footerClass: StringConstructor; readonly footerStyle: PropType; readonly onClickoutside: PropType<(e: MouseEvent) => void>; readonly 'onUpdate:show': PropType void>>; readonly onUpdateShow: PropType void>>; readonly internalDeactivateImmediately: BooleanConstructor; readonly internalSyncTargetWithParent: BooleanConstructor; readonly internalInheritedEventHandlers: { type: PropType; default: () => never[]; }; readonly internalTrapFocus: BooleanConstructor; readonly internalExtraClass: { type: PropType; default: () => never[]; }; readonly onShow: PropType void> | undefined>; readonly onHide: PropType void> | undefined>; readonly arrow: { type: PropType; default: undefined; }; readonly minWidth: NumberConstructor; readonly maxWidth: NumberConstructor; }>, { mergedClsPrefix: Ref; mergedTheme: import("vue").ComputedRef<{ common: import("../..").ThemeCommonVars; self: { optionHeightSmall: string; optionHeightMedium: string; optionHeightLarge: string; optionHeightHuge: string; borderRadius: string; fontSizeSmall: string; fontSizeMedium: string; fontSizeLarge: string; fontSizeHuge: string; optionTextColor: string; optionTextColorHover: string; optionTextColorActive: string; optionTextColorChildActive: string; color: string; dividerColor: string; suffixColor: string; prefixColor: string; optionColorHover: string; optionColorActive: string; groupHeaderTextColor: string; optionTextColorInverted: string; optionTextColorHoverInverted: string; optionTextColorActiveInverted: string; optionTextColorChildActiveInverted: string; colorInverted: string; dividerColorInverted: string; suffixColorInverted: string; prefixColorInverted: string; optionColorHoverInverted: string; optionColorActiveInverted: string; groupHeaderTextColorInverted: string; optionOpacityDisabled: string; padding: string; optionIconSizeSmall: string; optionIconSizeMedium: string; optionIconSizeLarge: string; optionIconSizeHuge: string; optionSuffixWidthSmall: string; optionSuffixWidthMedium: string; optionSuffixWidthLarge: string; optionSuffixWidthHuge: string; optionIconSuffixWidthSmall: string; optionIconSuffixWidthMedium: string; optionIconSuffixWidthLarge: string; optionIconSuffixWidthHuge: string; optionPrefixWidthSmall: string; optionPrefixWidthMedium: string; optionPrefixWidthLarge: string; optionPrefixWidthHuge: string; optionIconPrefixWidthSmall: string; optionIconPrefixWidthMedium: string; optionIconPrefixWidthLarge: string; optionIconPrefixWidthHuge: string; }; peers: { Popover: import("../../_mixins").Theme<"Popover", { fontSize: string; borderRadius: string; color: string; dividerColor: string; textColor: string; boxShadow: string; space: string; spaceArrow: string; arrowOffset: string; arrowOffsetVertical: string; arrowHeight: string; padding: string; }, { Scrollbar: import("../../_mixins").Theme<"Scrollbar", { height: string; width: string; borderRadius: string; color: string; colorHover: string; railInsetHorizontalBottom: string; railInsetHorizontalTop: string; railInsetVerticalRight: string; railInsetVerticalLeft: string; railColor: string; }, any>; }>; }; peerOverrides: { Popover?: { peers?: { Scrollbar?: import("../../_mixins/use-theme").ExtractThemeOverrides> | undefined; } | undefined; } | undefined; }; }>; mergedSize: import("vue").ComputedRef; tmNodes: import("vue").ComputedRef[]>; mergedShow: import("vue").ComputedRef; handleAfterLeave: () => void; doUpdateShow: (value: boolean) => void; cssVars: import("vue").ComputedRef | undefined; themeClass: Ref | undefined; onRender: (() => void) | undefined; }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly; }>; }>>; readonly themeOverrides: PropType; }>; }>>>; readonly builtinThemeOverrides: PropType; }>; }>>>; readonly animated: { readonly type: BooleanConstructor; readonly default: true; }; readonly keyboard: { readonly type: BooleanConstructor; readonly default: true; }; readonly size: PropType; readonly inverted: BooleanConstructor; readonly placement: { readonly type: PropType; readonly default: "bottom"; }; readonly onSelect: PropType>; readonly options: { readonly type: PropType; readonly default: () => never[]; }; readonly menuProps: PropType; readonly showArrow: BooleanConstructor; readonly renderLabel: PropType; readonly renderIcon: PropType; readonly renderOption: PropType; readonly nodeProps: PropType; readonly labelField: { readonly type: StringConstructor; readonly default: "label"; }; readonly keyField: { readonly type: StringConstructor; readonly default: "key"; }; readonly childrenField: { readonly type: StringConstructor; readonly default: "children"; }; readonly value: PropType; readonly show: { type: PropType; default: undefined; }; readonly defaultShow: BooleanConstructor; readonly trigger: { type: PropType; default: string; }; readonly delay: { type: NumberConstructor; default: number; }; readonly duration: { type: NumberConstructor; default: number; }; readonly raw: BooleanConstructor; readonly x: NumberConstructor; readonly y: NumberConstructor; readonly arrowPointToCenter: BooleanConstructor; readonly disabled: BooleanConstructor; readonly getDisabled: PropType<() => boolean>; readonly displayDirective: { type: PropType<"if" | "show">; default: string; }; readonly arrowClass: StringConstructor; readonly arrowStyle: PropType; readonly arrowWrapperClass: StringConstructor; readonly arrowWrapperStyle: PropType; readonly flip: { type: BooleanConstructor; default: boolean; }; readonly width: { type: PropType; default: undefined; }; readonly overlap: BooleanConstructor; readonly keepAliveOnHover: { type: BooleanConstructor; default: boolean; }; readonly zIndex: NumberConstructor; readonly to: { type: PropType; default: undefined; }; readonly scrollable: BooleanConstructor; readonly contentClass: StringConstructor; readonly contentStyle: PropType; readonly headerClass: StringConstructor; readonly headerStyle: PropType; readonly footerClass: StringConstructor; readonly footerStyle: PropType; readonly onClickoutside: PropType<(e: MouseEvent) => void>; readonly 'onUpdate:show': PropType void>>; readonly onUpdateShow: PropType void>>; readonly internalDeactivateImmediately: BooleanConstructor; readonly internalSyncTargetWithParent: BooleanConstructor; readonly internalInheritedEventHandlers: { type: PropType; default: () => never[]; }; readonly internalTrapFocus: BooleanConstructor; readonly internalExtraClass: { type: PropType; default: () => never[]; }; readonly onShow: PropType void> | undefined>; readonly onHide: PropType void> | undefined>; readonly arrow: { type: PropType; default: undefined; }; readonly minWidth: NumberConstructor; readonly maxWidth: NumberConstructor; }>> & Readonly<{}>, { readonly disabled: boolean; readonly raw: boolean; readonly width: number | "trigger"; readonly duration: number; readonly scrollable: boolean; readonly trigger: import("../..").PopoverTrigger; readonly to: string | boolean | HTMLElement; readonly placement: FollowerPlacement; readonly options: DropdownMixedOption[]; readonly show: boolean | undefined; readonly keyboard: boolean; readonly showArrow: boolean; readonly arrow: boolean | undefined; readonly defaultShow: boolean; readonly delay: number; readonly arrowPointToCenter: boolean; readonly displayDirective: "show" | "if"; readonly flip: boolean; readonly animated: boolean; readonly overlap: boolean; readonly keepAliveOnHover: boolean; readonly internalDeactivateImmediately: boolean; readonly internalSyncTargetWithParent: boolean; readonly internalInheritedEventHandlers: import("../../popover/src/Popover").TriggerEventHandlers[]; readonly internalTrapFocus: boolean; readonly internalExtraClass: string[]; readonly labelField: string; readonly childrenField: string; readonly inverted: boolean; readonly keyField: string; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; export default _default;