import { InputHTMLAttributes, SelectHTMLAttributes, DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
import { RValueOrKey } from '../common/key';
interface SelectProps {
/** @ignore */
autocomplete?: SelectHTMLAttributes['autocomplete'] & InputHTMLAttributes['autocomplete'];
/** @ignore */
autofocus?: SelectHTMLAttributes['autofocus'] & InputHTMLAttributes['autofocus'];
/** @ignore */
disabled?: SelectHTMLAttributes['disabled'] & InputHTMLAttributes['disabled'];
/** @ignore */
form?: SelectHTMLAttributes['form'] & InputHTMLAttributes['form'];
/** @ignore */
multiple?: SelectHTMLAttributes['multiple'] & InputHTMLAttributes['multiple'];
/** @ignore */
name?: SelectHTMLAttributes['name'] & InputHTMLAttributes['name'];
/** @ignore */
placeholder?: SelectHTMLAttributes['placeholder'];
/** @ignore */
required?: SelectHTMLAttributes['required'] & InputHTMLAttributes['required'];
/** @ignore */
size?: SelectHTMLAttributes['size'] & InputHTMLAttributes['size'];
}
type __VLS_Props = {
/** Whether the select is clearable. */
clearable?: boolean;
/**
* Whether the select is loading.
* It will be non-interactive in loading state.
*/
loading?: boolean;
/** Key(s) or data of the selected item(s). */
modelValue?: RValueOrKey[] | RValueOrKey | undefined;
/** Whether to support selecting multiple items. */
multiple?: boolean;
} & SelectProps;
declare function __VLS_template(): {
attrs: Partial<{}>;
slots: Readonly<{
/** Content of the select dropdown. */
default?: (props: {}) => any;
}> & {
/** Content of the select dropdown. */
default?: (props: {}) => any;
};
refs: {
input: HTMLInputElement;
};
rootEl: any;
};
type __VLS_TemplateResult = ReturnType;
declare const __VLS_component: DefineComponent<__VLS_Props, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
"update:modelValue": (value: RValueOrKey | RValueOrKey[] | undefined) => any;
}, string, PublicProps, Readonly<__VLS_Props> & Readonly<{
"onUpdate:modelValue"?: ((value: RValueOrKey | RValueOrKey[] | undefined) => any) | undefined;
}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {
input: HTMLInputElement;
}, any>;
declare const _default: __VLS_WithTemplateSlots;
export default _default;
type __VLS_WithTemplateSlots = T & {
new (): {
$slots: S;
};
};