import { ExtractPropTypes, ComponentPublicInstance, ComputedRef } from 'vue'; import { ISharedRenderlessFunctionParams, ISharedRenderlessParamUtils, ISharedRenderlessParamHooks } from '../../../shared.type'; import { IDropdownMenuVm } from '../../dropdown-menu/src/dropdown-menu'; import { open, opened, close, getTitle, onScroll, reset, closed, clickWrapper, clickOutside, tagClick, getOptionStyle, toggle, clickItem, getItemStyle, bindScroll, confirm, handleClick, computedGetIcon, getTip } from './renderless'; export type { ISharedRenderlessParamHooks, IDropdownMenuVm }; export declare const $constants: { ICON_MAP: { leftWardArrow: string; }; }; export declare const dropdownItemProps: { modelValue: (ArrayConstructor | NumberConstructor | StringConstructor)[]; _constants: { type: ObjectConstructor; default: () => { ICON_MAP: { leftWardArrow: string; }; }; }; icon: (StringConstructor | ObjectConstructor)[]; disabled: { type: BooleanConstructor; default: boolean; }; divided: BooleanConstructor; itemData: { type: (StringConstructor | ObjectConstructor)[]; default: string; }; title: StringConstructor; label: StringConstructor; level: StringConstructor; titleClass: StringConstructor; options: { type: ArrayConstructor; default: () => never[]; }; type: { type: StringConstructor; default: string; }; selected: { type: BooleanConstructor; default: boolean; }; selectedField: { type: StringConstructor; default: string; }; multiStage: { type: BooleanConstructor; default: boolean; }; currentIndex: { type: NumberConstructor; default: () => number; }; appendToBody: { type: BooleanConstructor; default: boolean; }; textField: { type: StringConstructor; default: string; }; tip: { type: (StringConstructor | FunctionConstructor)[]; default: string; }; tipPosition: { type: StringConstructor; default: string; }; }; export type IDropdownItemVm = ComponentPublicInstance & { type: string; toggle: (value: boolean, options?: object) => void; state: IDropdownItemState; } & IDropdownItemProps; export type IDropdownItemProps = ExtractPropTypes; export type IDropdownItemConstants = typeof $constants; export interface IDropdownItemState { checkedStatus: boolean; sort: 'asc' | 'desc'; transition: boolean; getTitle: boolean; showWrapper: boolean; showPopup: boolean; duration: number | string; overlay: ComputedRef; offset: ComputedRef; direction: ComputedRef; displayTitle: ComputedRef; itemStyle: ComputedRef; activeColor: ComputedRef; closeOnClickOverlay: ComputedRef; dropdownMenuVm: IDropdownMenuVm; currentIndex: number; textField: string; popperClass: string; getIcon: ComputedRef; } export interface IDropdownItemApi { state: IDropdownItemState; open: ReturnType; opened: ReturnType; close: ReturnType; getTitle: ReturnType; onScroll: ReturnType; reset: ReturnType; closed: ReturnType; clickWrapper: ReturnType; clickOutside: ReturnType; tagClick: ReturnType; getOptionStyle: ReturnType; toggle: ReturnType; clickItem: ReturnType; getItemStyle: ReturnType; bindScroll: ReturnType; confirm: ReturnType; handleClick: ReturnType; computedGetIcon: ReturnType; getTip: ReturnType; } export type IDropdownItemRenderlessParams = ISharedRenderlessFunctionParams & { state: IDropdownItemState; props: IDropdownItemProps; api: IDropdownItemApi; }; export type IDropdownItemRenderlessParamUtils = ISharedRenderlessParamUtils; export interface IDropdownItemStyle { zIndex: number; top: string; bottom: string; } export interface IDropdownItemTag { value: string; text: string; } export interface IDropdownItemOptionStyle { color: string; border?: string; } export interface IDropdownItemMfDataStore { checkedStatus: boolean; multiStageMenu: boolean; multiStage: string; itemData: object; itemLabel: string; showContent: boolean; dropdownMenuVm: IDropdownMenuVm; currentIndex: string; level: number; }