import { Ref } from '@vue/composition-api';
import { TdEnhancedTableProps, TdPrimaryTableProps, TableRowData, PrimaryTableCol } from '../type';
import TableTreeStore, { KeysType, TableTreeDataMap } from './tree-store';
export declare const childreMap: Map<any, any>;
export interface GetChildrenDataReturnValue {
    allChildren: Array<any>;
    allChildrenKeys: Array<string | number>;
}
export declare function getChildrenData(treeDataMap: InstanceType<typeof TableTreeStore>['treeDataMap'], data: TableRowData, childrenKey: string, rowKey: string, r?: GetChildrenDataReturnValue): GetChildrenDataReturnValue;
export interface RemoveParams {
    selectedRowKeys: Array<string | number>;
    removeKeys: Array<string | number>;
}
export interface RemainData {
    data: Array<any>;
    keys: Array<string | number>;
}
export declare function removeChildrenKeys(p: RemoveParams, r?: RemainData): RemainData;
export interface GetKeyDataParams {
    treeDataMap: InstanceType<typeof TableTreeStore>['treeDataMap'];
    data: Array<any>;
    column: PrimaryTableCol;
    keys: KeysType;
}
export interface GetRowDataParams {
    treeDataMap: InstanceType<typeof TableTreeStore>['treeDataMap'];
    selectedRowKeys: Array<string | number>;
}
export declare function getRowDataByKeys(p: GetRowDataParams): import("../type").TableRowState<TableRowData>[];
declare type SelectChangeParams = Parameters<TdPrimaryTableProps['onSelectChange']>;
export default function useTreeSelect(props: TdEnhancedTableProps, treeDataMap: Ref<TableTreeDataMap>): {
    onInnerSelectChange: (rowKeys: SelectChangeParams[0], extraData: SelectChangeParams[1]) => void;
};
export {};
