import { BasicDataNode, DataEntity, DataNode, FieldNames, Key, Option } from './types';
export declare function getKey(key: Key, pos: string): Key;
export declare function getPosition(level: string | number, index: number): string;
export declare function traverseDataNodes(dataNodes: DataNode[], callback: (node: {
    node: DataNode;
    index: number;
    pos: string;
    key: Key;
    parentPos: string | number;
    level: number;
    nodes: DataNode[];
}) => void, fieldNames: FieldNames): void;
interface Wrapper {
    posEntities: Record<string, DataEntity>;
    keyEntities: Record<Key, DataEntity>;
}
export declare function convertDataToEntities(dataNodes: DataNode[], { fieldNames, initWrapper, processEntity, }: {
    fieldNames: FieldNames;
    initWrapper?: (wrapper: Wrapper) => Wrapper;
    processEntity?: (wrapper: Wrapper, entity: DataEntity) => void;
}): {
    posEntities: {};
    keyEntities: {};
};
interface ConductReturnType {
    checkedKeys: Key[];
    halfCheckedKeys: Key[];
}
export type GetCheckDisabled<RecordType> = (record: RecordType) => boolean;
export declare function isCheckDisabled<TreeDataType>(node: TreeDataType): boolean;
export declare function conductCheck<TreeDataType extends BasicDataNode = DataNode>(keyList: Key[], checked: true | {
    checked: false;
    halfCheckedKeys: Key[];
}, keyEntities: Record<Key, DataEntity<TreeDataType>>, maxLevel: number, levelEntities: Map<number, Set<DataEntity<TreeDataType>>>): ConductReturnType;
export declare function formatStrategyValues(pathKeys: Key[], keyPathEntities: DataEntity): Key[];
export declare function isLeaf(option: Option, fieldNames: FieldNames): boolean;
export {};
