vuestic-ui
Version:
Vue 3 UI Framework
304 lines (303 loc) • 10.4 kB
TypeScript
export declare const VaDropdown: import("vue").DefineComponent<{
modelValue: {
type: BooleanConstructor;
default: boolean;
};
anchor: {
type: import("vue").PropType<import("../../composables").MaybeHTMLElementOrSelector>;
default: undefined;
};
anchorSelector: {
type: StringConstructor;
default: string;
};
innerAnchorSelector: {
type: StringConstructor;
default: string;
};
trigger: {
type: import("vue").PropType<import("./hooks/useDropdownNavigation").Trigger | readonly import("./hooks/useDropdownNavigation").Trigger[]>;
default: () => string[];
};
disabled: {
type: BooleanConstructor;
};
readonly: {
type: BooleanConstructor;
};
closeOnClickOutside: {
type: BooleanConstructor;
default: boolean;
};
closeOnFocusOutside: {
type: BooleanConstructor;
default: boolean;
};
closeOnAnchorClick: {
type: BooleanConstructor;
default: boolean;
};
closeOnContentClick: {
type: BooleanConstructor;
default: boolean;
};
hoverOverTimeout: {
type: (StringConstructor | NumberConstructor)[];
default: number;
};
hoverOutTimeout: {
type: (StringConstructor | NumberConstructor)[];
default: number;
};
isContentHoverable: {
type: BooleanConstructor;
default: boolean;
};
offset: {
type: import("vue").PropType<import("./types").DropdownOffsetProp>;
default: number;
};
keepAnchorWidth: {
type: BooleanConstructor;
default: boolean;
};
verticalScrollOnOverflow: {
type: BooleanConstructor;
default: boolean;
};
cursor: {
type: import("vue").PropType<boolean | import("./types").CursorAnchor>;
default: boolean;
};
autoPlacement: {
type: BooleanConstructor;
default: boolean;
};
stickToEdges: {
type: BooleanConstructor;
default: boolean;
};
target: {
type: import("vue").PropType<import("../../composables").MaybeHTMLElementOrSelector>;
default: undefined;
};
teleport: {
type: import("vue").PropType<import("../../composables").MaybeHTMLElementOrSelector>;
default: undefined;
};
keyboardNavigation: {
type: BooleanConstructor;
default: boolean;
};
ariaLabel: {
type: import("vue").PropType<import("../../composables").TranslationProp>;
default: import("../../composables").TranslationProp;
};
role: {
type: import("vue").PropType<import("../../utils/types/prop-type").StringWithAutocomplete<"button" | "none">>;
default: string;
};
contentClass: {
type: StringConstructor;
default: string;
};
stateful: {
type: import("vue").PropType<boolean>;
default: boolean;
};
placement: {
type: import("vue").PropType<import("../../composables").PlacementWithAlias>;
default: string;
validator: (position: import("../../composables").PlacementWithAlias) => boolean;
};
}, {
anchorRef: import("vue").WritableComputedRef<HTMLElement | undefined>;
anchorClass: {
"va-dropdown--disabled": boolean | undefined;
} & {
readonly asObject: import("vue").ComputedRef<{
"va-dropdown--disabled": boolean | undefined;
}>;
readonly asArray: import("vue").ComputedRef<"va-dropdown--disabled"[]>;
readonly asString: import("vue").ComputedRef<string>;
};
floating: import("vue").Ref<HTMLElement | undefined>;
floatingStyles: import("vue").ComputedRef<{
position: import("@floating-ui/utils").Strategy;
top: string;
left: string;
transform?: string | undefined;
willChange?: string | undefined;
} | {
position: string;
} | undefined>;
showFloating: import("vue").ComputedRef<boolean>;
teleportTarget: import("vue").ComputedRef<HTMLElement | undefined>;
isMounted: import("vue").Ref<boolean>;
valueComputed: import("../../composables").StatefulValue<boolean>;
hide: () => void;
show: () => void;
zIndex: import("vue").ComputedRef<number>;
teleportFromAttrs: {
"data-va-teleported-from": string;
};
teleportedAttrs: {
"data-va-app"?: number | undefined;
"data-va-teleported": string;
};
findTeleportedFrom: (el: HTMLElement | null | undefined) => HTMLElement | null;
tp: <Key extends import("../../composables").TranslationProp | undefined>(key: Key, values?: Record<string, string | number | boolean | undefined> | undefined) => string;
t: <Key_1 extends import("../../main").I18NKey>(key: Key_1, values?: Record<string, string | number | boolean | undefined> | undefined) => any;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("close" | "update:modelValue" | "open" | "click-outside" | "anchor-click" | "anchor-right-click" | "content-click" | "focus-outside" | "anchor-dblclick")[], "close" | "update:modelValue" | "open" | "click-outside" | "anchor-click" | "anchor-right-click" | "content-click" | "focus-outside" | "anchor-dblclick", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
modelValue: {
type: BooleanConstructor;
default: boolean;
};
anchor: {
type: import("vue").PropType<import("../../composables").MaybeHTMLElementOrSelector>;
default: undefined;
};
anchorSelector: {
type: StringConstructor;
default: string;
};
innerAnchorSelector: {
type: StringConstructor;
default: string;
};
trigger: {
type: import("vue").PropType<import("./hooks/useDropdownNavigation").Trigger | readonly import("./hooks/useDropdownNavigation").Trigger[]>;
default: () => string[];
};
disabled: {
type: BooleanConstructor;
};
readonly: {
type: BooleanConstructor;
};
closeOnClickOutside: {
type: BooleanConstructor;
default: boolean;
};
closeOnFocusOutside: {
type: BooleanConstructor;
default: boolean;
};
closeOnAnchorClick: {
type: BooleanConstructor;
default: boolean;
};
closeOnContentClick: {
type: BooleanConstructor;
default: boolean;
};
hoverOverTimeout: {
type: (StringConstructor | NumberConstructor)[];
default: number;
};
hoverOutTimeout: {
type: (StringConstructor | NumberConstructor)[];
default: number;
};
isContentHoverable: {
type: BooleanConstructor;
default: boolean;
};
offset: {
type: import("vue").PropType<import("./types").DropdownOffsetProp>;
default: number;
};
keepAnchorWidth: {
type: BooleanConstructor;
default: boolean;
};
verticalScrollOnOverflow: {
type: BooleanConstructor;
default: boolean;
};
cursor: {
type: import("vue").PropType<boolean | import("./types").CursorAnchor>;
default: boolean;
};
autoPlacement: {
type: BooleanConstructor;
default: boolean;
};
stickToEdges: {
type: BooleanConstructor;
default: boolean;
};
target: {
type: import("vue").PropType<import("../../composables").MaybeHTMLElementOrSelector>;
default: undefined;
};
teleport: {
type: import("vue").PropType<import("../../composables").MaybeHTMLElementOrSelector>;
default: undefined;
};
keyboardNavigation: {
type: BooleanConstructor;
default: boolean;
};
ariaLabel: {
type: import("vue").PropType<import("../../composables").TranslationProp>;
default: import("../../composables").TranslationProp;
};
role: {
type: import("vue").PropType<import("../../utils/types/prop-type").StringWithAutocomplete<"button" | "none">>;
default: string;
};
contentClass: {
type: StringConstructor;
default: string;
};
stateful: {
type: import("vue").PropType<boolean>;
default: boolean;
};
placement: {
type: import("vue").PropType<import("../../composables").PlacementWithAlias>;
default: string;
validator: (position: import("../../composables").PlacementWithAlias) => boolean;
};
}>> & {
onClose?: ((...args: any[]) => any) | undefined;
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
onOpen?: ((...args: any[]) => any) | undefined;
"onClick-outside"?: ((...args: any[]) => any) | undefined;
"onAnchor-click"?: ((...args: any[]) => any) | undefined;
"onAnchor-right-click"?: ((...args: any[]) => any) | undefined;
"onContent-click"?: ((...args: any[]) => any) | undefined;
"onFocus-outside"?: ((...args: any[]) => any) | undefined;
"onAnchor-dblclick"?: ((...args: any[]) => any) | undefined;
}, {
anchor: import("../../composables").MaybeHTMLElementOrSelector;
modelValue: boolean;
stateful: boolean;
target: import("../../composables").MaybeHTMLElementOrSelector;
disabled: boolean;
ariaLabel: import("../../composables").TranslationProp;
placement: import("../../composables").PlacementWithAlias;
offset: import("./types").DropdownOffsetProp;
role: import("../../utils/types/prop-type").StringWithAutocomplete<"button" | "none">;
anchorSelector: string;
innerAnchorSelector: string;
trigger: import("./hooks/useDropdownNavigation").Trigger | readonly import("./hooks/useDropdownNavigation").Trigger[];
readonly: boolean;
closeOnClickOutside: boolean;
closeOnFocusOutside: boolean;
closeOnAnchorClick: boolean;
closeOnContentClick: boolean;
hoverOverTimeout: string | number;
hoverOutTimeout: string | number;
isContentHoverable: boolean;
keepAnchorWidth: boolean;
verticalScrollOnOverflow: boolean;
cursor: boolean | import("./types").CursorAnchor;
autoPlacement: boolean;
stickToEdges: boolean;
teleport: import("../../composables").MaybeHTMLElementOrSelector;
keyboardNavigation: boolean;
contentClass: string;
}, {}>;
export { VaDropdownContent } from './components/VaDropdownContent';