import Vue, { PropType } from 'vue';
import { TdOptionProps } from './type';
import { SelectInstance } from './instance';
import { TScroll } from '../common';
export interface OptionInstance extends Vue {
    tSelect: SelectInstance;
}
export interface OptionProps extends TdOptionProps {
    panelElement: HTMLElement;
    scroll: TScroll;
    rowIndex: number;
    trs?: Map<number, object>;
    scrollType?: 'lazy' | 'virtual';
    isVirtual: boolean;
    bufferSize: number;
    multiple: Boolean;
    isCreatedOption: Boolean;
    index: Number;
}
declare const _default: import("vue").ComponentOptions<Vue, import("@vue/composition-api").ShallowUnwrapRef<{
    isHover: import("@vue/composition-api").Ref<boolean>;
    isSelected: import("@vue/composition-api").ComputedRef<any>;
    isDisabled: import("@vue/composition-api").ComputedRef<any>;
    isIndeterminate: import("@vue/composition-api").ComputedRef<boolean>;
    mouseEvent: (v: boolean) => void;
    classes: import("@vue/composition-api").ComputedRef<any[]>;
    selectProvider: any;
    labelText: import("@vue/composition-api").ComputedRef<string | number | boolean>;
    optionNode: any;
    tRowHeight: import("@vue/composition-api").ComputedRef<number>;
    hasLazyLoadHolder: import("@vue/composition-api").ComputedRef<boolean>;
    handleClick: (e: MouseEvent | KeyboardEvent) => void;
}> & import("@vue/composition-api").Data, {}, {}, {
    isCreatedOption: BooleanConstructor;
    multiple: BooleanConstructor;
    rowIndex: NumberConstructor;
    trs: PropType<Map<number, object>>;
    scrollType: StringConstructor;
    isVirtual: BooleanConstructor;
    bufferSize: NumberConstructor;
    index: NumberConstructor;
    checkAll: BooleanConstructor;
    content: {
        type: PropType<string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
    };
    default: {
        type: PropType<string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
    };
    disabled: BooleanConstructor;
    label: {
        type: StringConstructor;
        default: string;
    };
    title: {
        type: StringConstructor;
        default: string;
    };
    value: {
        type: PropType<string | number | boolean>;
    };
}, import("@vue/composition-api").ExtractPropTypes<{
    isCreatedOption: BooleanConstructor;
    multiple: BooleanConstructor;
    rowIndex: NumberConstructor;
    trs: PropType<Map<number, object>>;
    scrollType: StringConstructor;
    isVirtual: BooleanConstructor;
    bufferSize: NumberConstructor;
    index: NumberConstructor;
    checkAll: BooleanConstructor;
    content: {
        type: PropType<string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
    };
    default: {
        type: PropType<string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
    };
    disabled: BooleanConstructor;
    label: {
        type: StringConstructor;
        default: string;
    };
    title: {
        type: StringConstructor;
        default: string;
    };
    value: {
        type: PropType<string | number | boolean>;
    };
}>> & Omit<import("vue").VueConstructor<Vue>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{
    label: string;
    title: string;
    disabled: boolean;
    multiple: boolean;
    checkAll: boolean;
    isCreatedOption: boolean;
    isVirtual: boolean;
} & {
    index?: number;
    default?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    content?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    value?: string | number | boolean;
    bufferSize?: number;
    trs?: Map<number, object>;
    rowIndex?: number;
    scrollType?: string;
}, import("@vue/composition-api").ShallowUnwrapRef<{
    isHover: import("@vue/composition-api").Ref<boolean>;
    isSelected: import("@vue/composition-api").ComputedRef<any>;
    isDisabled: import("@vue/composition-api").ComputedRef<any>;
    isIndeterminate: import("@vue/composition-api").ComputedRef<boolean>;
    mouseEvent: (v: boolean) => void;
    classes: import("@vue/composition-api").ComputedRef<any[]>;
    selectProvider: any;
    labelText: import("@vue/composition-api").ComputedRef<string | number | boolean>;
    optionNode: any;
    tRowHeight: import("@vue/composition-api").ComputedRef<number>;
    hasLazyLoadHolder: import("@vue/composition-api").ComputedRef<boolean>;
    handleClick: (e: MouseEvent | KeyboardEvent) => void;
}>, import("@vue/composition-api").Data, {}, {}, {}, {}, {}, {
    label: string;
    title: string;
    disabled: boolean;
    multiple: boolean;
    checkAll: boolean;
    isCreatedOption: boolean;
    isVirtual: boolean;
} & {
    index?: number;
    default?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    content?: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
    value?: string | number | boolean;
    bufferSize?: number;
    trs?: Map<number, object>;
    rowIndex?: number;
    scrollType?: string;
}, {
    label: string;
    title: string;
    disabled: boolean;
    multiple: boolean;
    checkAll: boolean;
    isCreatedOption: boolean;
    isVirtual: boolean;
}, true>);
export default _default;
