import { VerticalPositionType } from '../constants';
import { INonReactiveData, TreeNodeKeyType, TreeProps } from '../interface';
import { TreeNode } from '../store';
type IUseVirtualListProps = Required<Pick<TreeProps, 'renderNodeAmount' | 'nodeMinHeight' | 'bufferNodeAmount' | 'keyField'>>;
export declare const useVirtualList: (nonReactive: INonReactiveData, props: IUseVirtualListProps) => {
    scrollArea: import('vue').Ref<any, any>;
    renderNodes: import('vue').Ref<{
        [x: string]: any;
        _level: number;
        checked: boolean;
        selected: boolean;
        indeterminate: boolean;
        disabled: boolean;
        expand: boolean;
        visible: boolean;
        _filterVisible: boolean;
        _parent: any | null;
        children: any[];
        isLeaf: boolean;
        _loading: boolean;
        _loaded: boolean;
        readonly _keyField: string;
        readonly _remote: boolean;
        setChildren: (children: import('../interface').ITreeNodeOptions[]) => void;
    }[], TreeNode[] | {
        [x: string]: any;
        _level: number;
        checked: boolean;
        selected: boolean;
        indeterminate: boolean;
        disabled: boolean;
        expand: boolean;
        visible: boolean;
        _filterVisible: boolean;
        _parent: any | null;
        children: any[];
        isLeaf: boolean;
        _loading: boolean;
        _loaded: boolean;
        readonly _keyField: string;
        readonly _remote: boolean;
        setChildren: (children: import('../interface').ITreeNodeOptions[]) => void;
    }[]>;
    blockLength: import('vue').Ref<number, number>;
    blockAreaHeight: import('vue').Ref<number, number>;
    topSpaceHeight: import('vue').Ref<number, number>;
    bottomSpaceHeight: import('vue').Ref<number, number>;
    renderAmount: import('vue').Ref<number, number>;
    renderAmountCache: import('vue').Ref<number, number>;
    renderStart: import('vue').Ref<number, number>;
    renderStartCache: import('vue').Ref<number, number>;
    resetSpaceHeights: () => void;
    updateRenderAmount: () => void;
    updateRenderNodes: (isScroll?: boolean) => void;
    updateRender: () => void;
    updateBlockNodes: () => void;
    updateBlockData: () => void;
    handleTreeScroll: () => void;
    scrollTo: (key: TreeNodeKeyType, verticalPosition?: VerticalPositionType | number) => void;
};
export {};
//# sourceMappingURL=use-virtual-list.d.ts.map