UNPKG

mltc-design-system

Version:

長照設計系統

203 lines (202 loc) 5.67 kB
import { DefineComponent, ExtractPropTypes, ComputedRef, Ref, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue'; interface SelectOption { label: string; value: string | number; disabled?: boolean; } declare const _default: DefineComponent<ExtractPropTypes<{ modelValue: { type: (StringConstructor | NumberConstructor | ArrayConstructor)[]; default: string; }; options: { type: () => SelectOption[]; default: () => never[]; }; placeholder: { type: StringConstructor; default: string; }; size: { type: StringConstructor; default: string; validator: (value: string) => boolean; }; disabled: { type: BooleanConstructor; default: boolean; }; readonly: { type: BooleanConstructor; default: boolean; }; clearable: { type: BooleanConstructor; default: boolean; }; multiple: { type: BooleanConstructor; default: boolean; }; filterable: { type: BooleanConstructor; default: boolean; }; searchPlaceholder: { type: StringConstructor; default: string; }; emptyText: { type: StringConstructor; default: string; }; label: { type: StringConstructor; default: string; }; required: { type: BooleanConstructor; default: boolean; }; error: { type: BooleanConstructor; default: boolean; }; errorMessage: { type: StringConstructor; default: string; }; helpText: { type: StringConstructor; default: string; }; dropdownWidth: { type: (StringConstructor | NumberConstructor)[]; default: string; }; maxHeight: { type: (StringConstructor | NumberConstructor)[]; default: number; }; }>, { selectId: ComputedRef<string | undefined>; selectContainerRef: Ref<HTMLElement | null, HTMLElement | null>; dropdownRef: Ref<HTMLElement | null, HTMLElement | null>; optionsListRef: Ref<HTMLElement | null, HTMLElement | null>; searchInputRef: Ref<HTMLInputElement | null, HTMLInputElement | null>; isOpen: Ref<boolean, boolean>; searchQuery: Ref<string, string>; dropdownStyle: ComputedRef<Record<string, string>>; filteredOptions: ComputedRef<SelectOption[]>; hasSelected: ComputedRef<boolean>; selectedOptions: ComputedRef<SelectOption[]>; selectedLabel: ComputedRef<string>; isOptionSelected: (option: SelectOption) => boolean; selectOption: (option: SelectOption) => void; removeOption: (option: SelectOption) => void; handleClear: () => void; handleSearch: () => void; toggleDropdown: () => void; closeDropdown: () => void; }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, ("update:modelValue" | "change" | "focus" | "blur" | "clear" | "visible-change")[], "update:modelValue" | "change" | "focus" | "blur" | "clear" | "visible-change", PublicProps, Readonly< ExtractPropTypes<{ modelValue: { type: (StringConstructor | NumberConstructor | ArrayConstructor)[]; default: string; }; options: { type: () => SelectOption[]; default: () => never[]; }; placeholder: { type: StringConstructor; default: string; }; size: { type: StringConstructor; default: string; validator: (value: string) => boolean; }; disabled: { type: BooleanConstructor; default: boolean; }; readonly: { type: BooleanConstructor; default: boolean; }; clearable: { type: BooleanConstructor; default: boolean; }; multiple: { type: BooleanConstructor; default: boolean; }; filterable: { type: BooleanConstructor; default: boolean; }; searchPlaceholder: { type: StringConstructor; default: string; }; emptyText: { type: StringConstructor; default: string; }; label: { type: StringConstructor; default: string; }; required: { type: BooleanConstructor; default: boolean; }; error: { type: BooleanConstructor; default: boolean; }; errorMessage: { type: StringConstructor; default: string; }; helpText: { type: StringConstructor; default: string; }; dropdownWidth: { type: (StringConstructor | NumberConstructor)[]; default: string; }; maxHeight: { type: (StringConstructor | NumberConstructor)[]; default: number; }; }>> & Readonly<{ onFocus?: ((...args: any[]) => any) | undefined; onBlur?: ((...args: any[]) => any) | undefined; onChange?: ((...args: any[]) => any) | undefined; "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined; onClear?: ((...args: any[]) => any) | undefined; "onVisible-change"?: ((...args: any[]) => any) | undefined; }>, { size: string; disabled: boolean; label: string; required: boolean; modelValue: string | number | unknown[]; placeholder: string; readonly: boolean; clearable: boolean; error: boolean; errorMessage: string; helpText: string; options: SelectOption[]; multiple: boolean; filterable: boolean; searchPlaceholder: string; emptyText: string; dropdownWidth: string | number; maxHeight: string | number; }, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>; export default _default;