import type { OptionData, RenderNode, OnActiveValue } from './interface';
import type { RawValueType, FlattenOptionsType } from './interface/generator';
export interface RefOptionListProps {
    onKeydown: (e?: KeyboardEvent) => void;
    onKeyup: (e?: KeyboardEvent) => void;
    scrollTo?: (index: number) => void;
}
import type { EventHandler } from '../_util/EventInterface';
export interface OptionListProps<OptionType extends object> {
    prefixCls: string;
    id: string;
    options: OptionType[];
    flattenOptions: FlattenOptionsType<OptionType>;
    height: number;
    itemHeight: number;
    values: Set<RawValueType>;
    multiple: boolean;
    open: boolean;
    defaultActiveFirstOption?: boolean;
    notFoundContent?: any;
    menuItemSelectedIcon?: RenderNode;
    childrenAsData: boolean;
    searchValue: string;
    virtual: boolean;
    onSelect: (value: RawValueType, option: {
        selected: boolean;
    }) => void;
    onToggleOpen: (open?: boolean) => void;
    /** Tell Select that some value is now active to make accessibility work */
    onActiveValue: OnActiveValue;
    onScroll: EventHandler;
    /** Tell Select that mouse enter the popup to force re-render */
    onMouseenter?: EventHandler;
}
/**
 * Using virtual list of option display.
 * Will fallback to dom if use customize render.
 */
declare const OptionList: import("vue").DefineComponent<OptionListProps<OptionData | import("./interface").OptionGroupData>, {
    state?: any;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<OptionListProps<OptionData | import("./interface").OptionGroupData>>, {
    notFoundContent: any;
}>;
export default OptionList;
