import { getAllCommands as getAllEditorCommands } from './editor/index.mjs';
import { getAllCommands as getAllSelectionExtendCommands } from './extendCellsSelection/index.mjs';
import { getAllCommands as getAllSelectionMoveCommands } from './moveCellSelection/index.mjs';
import { command as emptySelectedCells } from './emptySelectedCells.mjs';
import { command as scrollToFocusedCell } from './scrollToFocusedCell.mjs';
import { command as selectAllCells } from './selectAllCells.mjs';
import { command as selectAllCellsAndHeaders } from './selectAllCellsAndHeaders.mjs';
import { command as populateSelectedCellsData } from './populateSelectedCellsData.mjs';
import { command as tabNavigation } from './tabNavigation.mjs';
const allCommands = [
    ...getAllEditorCommands(),
    ...getAllSelectionExtendCommands(),
    ...getAllSelectionMoveCommands(),
    emptySelectedCells,
    scrollToFocusedCell,
    selectAllCells,
    selectAllCellsAndHeaders,
    populateSelectedCellsData,
    tabNavigation
];
/**
 * Prepares and creates an object with all available commands to trigger.
 *
 * @param {Handsontable} hot The Handsontable instance.
 * @returns {object}
 */ export function createKeyboardShortcutCommandsPool(hot) {
    const commands = {};
    allCommands.forEach(({ name, callback })=>{
        commands[name] = (...args)=>callback(hot, ...args);
    });
    return commands;
}
