import { RTEEditorState } from '../../dto/editor-state';
import { VegaRichTextEditor } from '../../vega-rich-text-editor';
import { ComponentValueHistoryControllerSlimmer } from '../../../../helpers/slimmers/component-value-history-controller-slimmer.abstract';
/**
 * History controller for RTE.
 */
export declare class HistoryController extends ComponentValueHistoryControllerSlimmer<RTEEditorState> {
  protected host: VegaRichTextEditor['host'];
  protected vegaRichTextEditorRenderer: VegaRichTextEditor['vegaRichTextEditorRenderer'];
  protected valueController: VegaRichTextEditor['valueController'];
  protected value: VegaRichTextEditor['value'];
  protected selectionController: VegaRichTextEditor['selectionController'];
  /**
   * Component lifecycle - [componentDidLoad]
   */
  registerInitState(): void;
  /**
   * Restores the previous state from the undo stack.
   */
  undo(): Promise<void>;
  /**
   * Restores the next state from the redo stack.
   */
  redo(): Promise<void>;
  /**
   * Gets the effective target elements for the RTE history.
   *
   * @returns {HTMLElement[]} - An array of effective target elements.
   */
  protected getEffectiveTargets: () => HTMLElement[];
  /**
   * Gets the ineffective target elements for the RTE history.
   *
   * @returns {HTMLElement[]} - An array of ineffective target elements.
   */
  protected getIneffectiveTargets: () => HTMLElement[];
  /**
   * Restores the editor state based on the provided history state.
   *
   * @param {RTEEditorState} state - The state to restore to.
   */
  private restoreState;
}
