import { comparatorCurry, Tree } from './types';
/**
 * Checks nested items
 * @param checked
 * @param item
 * @param nodesKey
 * @param comparator
 */
export declare function getBulkChecked<T>(checked: Array<Tree<T>>, item: T, nodesKey: string, comparator: comparatorCurry<Tree<T>>, isDisabled: (item: T | Tree<T>) => boolean): Array<Tree<T>>;
/**
 * Unchecks nested items
 * @param checked
 * @param item
 * @param nodesKey
 * @param comparator
 */
export declare function getBulkUnchecked<T>(checked: Array<Tree<T>>, item: T, nodesKey: string, comparator: comparatorCurry<Tree<T>>): Array<Tree<T>>;
/**
 * Return new state with items toggled
 * @param state
 * @param item
 */
export declare function getToggledState<T>(state: Array<Tree<T>>, item: T, nodesKey: string, comparator: comparatorCurry<Tree<T>>, isDisabled: (item: T | Tree<T>) => boolean): Array<Tree<T>>;
/**
 * Represents a tree section on a single array.
 */
export declare function getFlat<T>(tree: Tree<T>, arr?: Array<Tree<T>>, nodesKey?: string): Array<T>;
