import { BasePlugin } from '../base'; export declare const PLUGIN_KEY = "bindRowsWithHeaders"; export declare const PLUGIN_PRIORITY = 210; /** * @plugin BindRowsWithHeaders * @class BindRowsWithHeaders * * @description * Plugin allows binding the table rows with their headers. * * If the plugin is enabled, the table row headers will "stick" to the rows, when they are hidden/moved. Basically, if * at the initialization row 0 has a header titled "A", it will have it no matter what you do with the table. * * @example * ::: only-for javascript * ```js * const container = document.getElementById('example'); * const hot = new Handsontable(container, { * data: getData(), * // enable plugin * bindRowsWithHeaders: true * }); * ``` * ::: * * ::: only-for react * ```jsx * * ``` * ::: * * ::: only-for angular * ```ts * settings = { * data: getData(), * bindRowsWithHeaders: true, * }; * ``` * * ```html * * ``` * ::: */ export declare class BindRowsWithHeaders extends BasePlugin { #private; /** * Returns the plugin key used to identify this plugin in Handsontable settings. */ static get PLUGIN_KEY(): string; /** * Returns the priority order used to determine the order in which plugins are initialized. */ static get PLUGIN_PRIORITY(): number; /** * Plugin indexes cache. * * @private * @type {null|IndexMap} */ headerIndexes: Record | null; /** * Checks if the plugin is enabled in the handsontable settings. This method is executed in {@link Hooks#beforeInit} * hook and if it returns `true` then the {@link BindRowsWithHeaders#enablePlugin} method is called. * * @returns {boolean} */ isEnabled(): boolean; /** * Enables the plugin functionality for this Handsontable instance. */ enablePlugin(): void; /** * Disables the plugin functionality for this Handsontable instance. */ disablePlugin(): void; /** * Destroys the plugin instance. */ destroy(): void; }