import { ExtractPropTypes, PropType } from 'vue';
import { ConfigurableProps } from '@vexip-ui/config';
import { AsyncLoadFn, Data, FilterFn, NodePropsFn, TreeNodeDropType, TreeNodeKeyConfig, TreeNodePostCreate, TreeNodeProps, TreeNodeRenderFn, TreeSlots } from './symbol';
export declare const treeProps: {
    inherit: PropType<boolean>;
    locale: PropType<Partial<{
        empty: string;
    }>>;
    arrow: PropType<boolean | "auto">;
    data: PropType<Data[]>;
    noBuildTree: PropType<boolean>;
    emptyText: PropType<string>;
    disabled: PropType<boolean>;
    readonly: PropType<boolean>;
    checkbox: PropType<boolean>;
    suffixCheckbox: PropType<boolean>;
    renderer: PropType<TreeNodeRenderFn>;
    prefixRenderer: PropType<TreeNodeRenderFn>;
    suffixRenderer: PropType<TreeNodeRenderFn>;
    multiple: PropType<boolean>;
    indent: PropType<string | number>;
    accordion: PropType<boolean>;
    draggable: PropType<boolean>;
    appear: PropType<boolean>;
    floorSelect: PropType<boolean>;
    onAsyncLoad: PropType<AsyncLoadFn>;
    cacheNode: PropType<boolean>;
    rootId: PropType<string | number>;
    keyConfig: PropType<TreeNodeKeyConfig>;
    noCascaded: PropType<boolean>;
    filter: PropType<string | FilterFn>;
    ignoreCase: PropType<boolean>;
    nodeProps: PropType<Data | NodePropsFn>;
    linkLine: PropType<boolean | "none" | "dashed" | "dotted" | "solid">;
    postCreate: PropType<TreeNodePostCreate>;
    virtual: PropType<boolean>;
    nodeMinHeight: PropType<number>;
    useYBar: PropType<boolean>;
    noTransition: PropType<boolean>;
    arrowIcon: PropType<any>;
    blockEffect: PropType<boolean>;
    filterLeaf: PropType<boolean>;
    keepSelected: PropType<boolean>;
    slots: PropType<TreeSlots>;
    onNodeChange: PropType<((data: Data, node: TreeNodeProps, checked: boolean) => void) | ((data: Data, node: TreeNodeProps, checked: boolean) => void)[]>;
    onNodeClick: PropType<((data: Data, node: TreeNodeProps) => void) | ((data: Data, node: TreeNodeProps) => void)[]>;
    onNodeSelect: PropType<((data: Data | Data[], node: TreeNodeProps | TreeNodeProps[]) => void) | ((data: Data | Data[], node: TreeNodeProps | TreeNodeProps[]) => void)[]>;
    onNodeCancel: PropType<((data: Data, node: TreeNodeProps) => void) | ((data: Data, node: TreeNodeProps) => void)[]>;
    onNodeExpand: PropType<((data: Data, node: TreeNodeProps) => void) | ((data: Data, node: TreeNodeProps) => void)[]>;
    onNodeReduce: PropType<((data: Data, node: TreeNodeProps) => void) | ((data: Data, node: TreeNodeProps) => void)[]>;
    onNodeContextmenu: PropType<((event: MouseEvent, data: Data, node: TreeNodeProps) => void) | ((event: MouseEvent, data: Data, node: TreeNodeProps) => void)[]>;
    onDragStart: PropType<((data: Data, node: TreeNodeProps) => void) | ((data: Data, node: TreeNodeProps) => void)[]>;
    onDragOver: PropType<((data: Data, node: TreeNodeProps) => void) | ((data: Data, node: TreeNodeProps) => void)[]>;
    onDrop: PropType<((data: Data, node: TreeNodeProps, type: TreeNodeDropType) => void) | ((data: Data, node: TreeNodeProps, type: TreeNodeDropType) => void)[]>;
    onDragEnd: PropType<((data: Data, node: TreeNodeProps) => void) | ((data: Data, node: TreeNodeProps) => void)[]>;
    onLabelClick: PropType<((data: Data, node: TreeNodeProps) => void) | ((data: Data, node: TreeNodeProps) => void)[]>;
};
export type TreeProps = ExtractPropTypes<typeof treeProps>;
export type TreeCProps = ConfigurableProps<TreeProps, 'data', 'onAsyncLoad'>;
