import { DataState } from '../../snk-data-unit/snk-data-unit';
import { CustomButton, TaskbarManager } from '../snk-taskbar';
export default class SimpleTaskbarProcessor {
  private _defaultButtons;
  /** ID da taskbar sendo processada */
  taskbarID: string;
  /** String com nomes dos botões separados por vírgula */
  buttons: string;
  /** Array com nomes dos botões visíveis */
  buttonsArray: Array<string>;
  /** Array com nomes dos botões desabilitados */
  disabledButtons: Array<string>;
  /** Mapa com os botões customizados indexados por nome */
  customButtons: Map<string, CustomButton>;
  /**
   * Cria uma nova instância do processador de taskbar.
   * @param defaultButtons - Array com os botões padrão a serem exibidos
  */
  constructor(defaultButtons: Array<string>);
  /**
   * Processa a taskbar aplicando regras de visibilidade e habilitação.
   * @param taskbarID - Identificador único da taskbar
   * @param taskbarManager - Gerenciador de taskbar com regras customizadas
   * @param dataState - Estado atual dos dados
   * @param disabledButtons - Array de botões desabilitados
   * @param invisibleButtons - Array de botões invisíveis
 */
  process(taskbarID: string, taskbarManager: TaskbarManager, dataState: DataState, disabledButtons?: Array<string>, invisibleButtons?: Array<string>): void;
  private getButtonsArray;
  private isEnabled;
}
