import { DirectionType, ITreeselectParams, IconsType, OptionType, ValueInputType } from 'treeselectjs'; export type { IconsType, DirectionType, OptionType, TagsSortItem } from 'treeselectjs'; /** Value type for v-model and emitted events: single id, array of ids, or null/undefined. */ export type TreeselectValue = ValueInputType; /** * Keys from ITreeselectParams that are not exposed as Vue props. * The component provides these internally (container, slot, callbacks). */ type TreeselectOmittedParams = 'parentHtmlContainer' | 'listSlotHtmlComponent' | 'inputCallback' | 'openCallback' | 'closeCallback' | 'nameChangeCallback' | 'searchCallback' | 'openCloseGroupCallback'; /** * Props for the Vue Treeselect component. * Mirrors ITreeselectParams except: uses `modelValue` instead of `value` for v-model, * and omits container/slot/callback params (handled internally). * @see ITreeselectParams in treeselectjs for full option descriptions */ export type VueTreeselectProps = Omit & { /** Bound value (v-model). Single id, array of ids, or null/undefined. */ modelValue?: TreeselectValue; }; /** * Vue 3 wrapper for treeselectjs: hierarchical single/multi select with tags and search. * All options from ITreeselectParams are supported as props (except value → use modelValue). * Emits: update:modelValue, input, open, close, name-change, search, open-close-group. * @see https://github.com/dipson88/treeselectjs/tree/main/packages/vue-treeselectjs * @see ITreeselectParams in treeselectjs for option details */ declare const _default: import('vue').DefineComponent<{ options?: OptionType[] | undefined; openLevel?: number | undefined; appendToBody?: boolean | undefined; alwaysOpen?: boolean | undefined; showTags?: boolean | undefined; tagsCountText?: string | undefined; tagsSortFn?: import('treeselectjs').TagsSortFnType | undefined; clearable?: boolean | undefined; searchable?: boolean | undefined; placeholder?: string | undefined; grouped?: boolean | undefined; isGroupedValue?: boolean | undefined; disabled?: boolean | undefined; emptyText?: string | undefined; staticList?: boolean | undefined; id?: string | undefined; ariaLabel?: string | undefined; isSingleSelect?: boolean | undefined; showCount?: boolean | undefined; disabledBranchNode?: boolean | undefined; direction?: DirectionType | undefined; expandSelected?: boolean | undefined; saveScrollPosition?: boolean | undefined; isIndependentNodes?: boolean | undefined; rtl?: boolean | undefined; listClassName?: string | undefined; isBoostedRendering?: boolean | undefined; iconElements?: Partial | undefined; modelValue?: ValueInputType; }, { treeselectContainerRef: import('vue').Ref; treeselectAfterListSlotRef: import('vue').Ref; }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, { 'update:modelValue': (_value: TreeselectValue) => true; input: (_value: TreeselectValue) => true; open: (_value: TreeselectValue) => true; close: (_value: TreeselectValue) => true; 'name-change': (_name: string) => true; search: (_value: string) => true; 'open-close-group': (_payload: { groupId: TreeselectValue; isClosed: boolean; }) => true; }, string, import('vue').PublicProps, Readonly<{ options?: OptionType[] | undefined; openLevel?: number | undefined; appendToBody?: boolean | undefined; alwaysOpen?: boolean | undefined; showTags?: boolean | undefined; tagsCountText?: string | undefined; tagsSortFn?: import('treeselectjs').TagsSortFnType | undefined; clearable?: boolean | undefined; searchable?: boolean | undefined; placeholder?: string | undefined; grouped?: boolean | undefined; isGroupedValue?: boolean | undefined; disabled?: boolean | undefined; emptyText?: string | undefined; staticList?: boolean | undefined; id?: string | undefined; ariaLabel?: string | undefined; isSingleSelect?: boolean | undefined; showCount?: boolean | undefined; disabledBranchNode?: boolean | undefined; direction?: DirectionType | undefined; expandSelected?: boolean | undefined; saveScrollPosition?: boolean | undefined; isIndependentNodes?: boolean | undefined; rtl?: boolean | undefined; listClassName?: string | undefined; isBoostedRendering?: boolean | undefined; iconElements?: Partial | undefined; modelValue?: ValueInputType; }> & Readonly<{ "onUpdate:modelValue"?: ((_value: ValueInputType) => any) | undefined; onInput?: ((_value: ValueInputType) => any) | undefined; onOpen?: ((_value: ValueInputType) => any) | undefined; onClose?: ((_value: ValueInputType) => any) | undefined; "onName-change"?: ((_name: string) => any) | undefined; onSearch?: ((_value: string) => any) | undefined; "onOpen-close-group"?: ((_payload: { groupId: TreeselectValue; isClosed: boolean; }) => any) | undefined; }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>; export default _default;