import { NTree } from '../..';
import { PropType } from 'vue';
export declare const makeTreeEventsProps: <Defaults extends {
    onFocus?: unknown;
    onBlur?: unknown;
    onKeydown?: unknown;
    onContextmenu?: unknown;
    onClick?: unknown;
    onDblclick?: unknown;
    onScroll?: unknown;
    onExpand?: unknown;
    onCheck?: unknown;
    onSelect?: unknown;
    onLoad?: unknown;
    onMouseenter?: unknown;
    onMouseleave?: unknown;
    onRightClick?: unknown;
    onDragstart?: unknown;
    onDragenter?: unknown;
    onDragover?: unknown;
    onDragleave?: unknown;
    onDragend?: unknown;
    onDrop?: unknown;
    onActiveChange?: unknown;
} = {}>(defaults?: Defaults | undefined) => import('../../../utils').AppendDefault<{
    onFocus: {
        type: PropType<(event: FocusEvent) => void>;
        default: undefined;
    };
    onBlur: {
        type: PropType<(event: FocusEvent) => void>;
        default: undefined;
    };
    onKeydown: {
        type: PropType<NTree.TEventHandler>;
        default: undefined;
    };
    onContextmenu: {
        type: PropType<NTree.TEventHandler>;
        default: undefined;
    };
    onClick: {
        type: PropType<NTree.TNodeMouseEventHandler>;
        default: undefined;
    };
    onDblclick: {
        type: PropType<NTree.TNodeMouseEventHandler>;
        default: undefined;
    };
    onScroll: {
        type: PropType<NTree.TEventHandler>;
        default: undefined;
    };
    onExpand: {
        type: PropType<(expandedKeys: NTree.TKey[], info: {
            node: NTree.IEventDataNode;
            expanded: boolean;
            nativeEvent: MouseEvent;
        }) => void>;
        default: undefined;
    };
    onCheck: {
        type: PropType<(checked: {
            checked: NTree.TKey[];
            halfChecked: NTree.TKey[];
        } | NTree.TKey[], info: NTree.ICheckInfo) => void>;
        default: undefined;
    };
    onSelect: {
        type: PropType<(selectedKeys: NTree.TKey[], info: {
            event: "select";
            selected: boolean;
            node: NTree.IEventDataNode;
            selectedNodes: NTree.IDataNode[];
            nativeEvent: MouseEvent;
        }) => void>;
        default: undefined;
    };
    onLoad: {
        type: PropType<(loadedKeys: NTree.TKey[], info: {
            event: "load";
            node: NTree.IEventDataNode;
        }) => void>;
        default: undefined;
    };
    onMouseenter: {
        type: PropType<(info: NTree.TNodeMouseEventParams) => void>;
        default: undefined;
    };
    onMouseleave: {
        type: PropType<(info: NTree.TNodeMouseEventParams) => void>;
        default: undefined;
    };
    onRightClick: {
        type: PropType<(info: NTree.TNodeMouseEventParams) => void>;
        default: undefined;
    };
    onDragstart: {
        type: PropType<(info: NTree.TNodeDragEventParams) => void>;
        default: undefined;
    };
    onDragenter: {
        type: PropType<(info: NTree.TNodeDragEventParams & {
            expandedKeys: NTree.TKey[];
        }) => void>;
        default: undefined;
    };
    onDragover: {
        type: PropType<(info: NTree.TNodeDragEventParams) => void>;
        default: undefined;
    };
    onDragleave: {
        type: PropType<(info: NTree.TNodeDragEventParams) => void>;
        default: undefined;
    };
    onDragend: {
        type: PropType<(info: NTree.TNodeDragEventParams) => void>;
        default: undefined;
    };
    onDrop: {
        type: PropType<(info: NTree.TNodeDragEventParams & {
            dragNode: NTree.IEventDataNode | null;
            dragNodesKeys: NTree.TKey[];
            dropPosition: number;
            dropToGap: boolean;
        }) => void>;
        default: undefined;
    };
    onActiveChange: {
        type: PropType<(key: NTree.TKey | null) => void>;
        default: undefined;
    };
}, Defaults>;
