import { EventEmitter } from '../../stencil-public-runtime';
export interface SelectOption {
    value: string | number;
    label: string;
    disabled?: boolean;
    divided?: boolean;
}
/**
 * Select 选择器组件
 * 当选项过多时，使用下拉菜单展示并选择内容
 */
export declare class Select {
    el: HTMLElement;
    /**
     * 绑定值
     */
    modelValue?: string | number | (string | number)[];
    /**
     * 可选项数据源
     */
    options: SelectOption[];
    /**
     * 输入框占位文本
     */
    placeholder: string;
    /**
     * 是否禁用
     * @default false
     */
    disabled: boolean;
    /**
     * 输入框尺寸
     */
    size: 'large' | 'default' | 'small';
    /**
     * 是否可清空
     * @default false
     */
    clearable: boolean;
    /**
     * 是否多选
     * @default false
     */
    multiple: boolean;
    /**
     * 是否可搜索
     * @default false
     */
    filterable: boolean;
    /**
     * 自定义过滤方法
     */
    filterMethod?: (query: string) => void;
    /**
     * 是否默认展开
     * @default false
     */
    defaultFirstOption: boolean;
    /**
     * 是否允许创建新条目
     * @default false
     */
    allowCreate: boolean;
    /**
     * 多选时是否将选中值按文字的形式展示
     * @default false
     */
    collapseTags: boolean;
    /**
     * 多选时最多显示多少个tag
     */
    maxCollapseTags?: number;
    isOpen: boolean;
    inputValue: string;
    searchValue: string;
    filteredOptions: SelectOption[];
    /** 键盘高亮的选项索引（-1 表示无） */
    activeOptionIndex: number;
    /**
     * 值改变事件
     */
    hbChange: EventEmitter<string | number | (string | number)[]>;
    /**
     * 下拉框出现/隐藏时触发
     */
    hbVisibleChange: EventEmitter<boolean>;
    private clickOutside;
    componentDidLoad(): void;
    disconnectedCallback(): void;
    handleValueChange(): void;
    handleOptionsChange(): void;
    private updateInputValue;
    private handleInputClick;
    private handleWrapperKeydown;
    private handleSelect;
    private handleClear;
    private handleSearch;
    private isSelected;
    render(): any;
}
