import Change from '../Change';
import { SelectionManager } from '../..';
import { TreeItem } from '@zeainc/zea-engine';
/**
 * Represents a `Change` class for storing `Selection` values.
 *
 * @extends Change
 */
declare class SelectionChange extends Change {
    __selectionManager: SelectionManager;
    __prevSelection: Set<TreeItem>;
    __newSelection: Set<TreeItem>;
    /**
     * Creates an instance of SelectionChange.
     *
     * @param selectionManager - The selectionManager value.
     * @param prevSelection - The prevSelection value.
     * @param newSelection - The newSelection value.
     */
    constructor(selectionManager: SelectionManager, prevSelection: Set<TreeItem>, newSelection: Set<TreeItem>);
    /**
     * Sets the state of selections to the previous list of items selected.
     */
    undo(): void;
    /**
     * Restores the state of the selections to the latest the list of items selected.
     */
    redo(): void;
    /**
     * Serializes selection values as a JSON object, allowing persistence/replication.
     *
     * @param context - The appData param.
     * @return {object} The return value.
     */
    toJSON(context: Record<any, any>): Record<any, any>;
    /**
     * Restores selection state from a JSON object.
     *
     * @param j - The j param.
     * @param context - The context param.
     */
    fromJSON(j: Record<any, any>, context: Record<any, any>): void;
}
export default SelectionChange;
export { SelectionChange };
//# sourceMappingURL=SelectionChange.d.ts.map