import type { HotInstance } from '../../core/types'; import { BasePlugin } from '../base'; export declare const PLUGIN_KEY = "manualRowResize"; export declare const PLUGIN_PRIORITY = 30; /** * @plugin ManualRowResize * @class ManualRowResize * * @description * This plugin allows to change rows height. * * The plugin creates additional components to make resizing possibly using user interface: * - handle - the draggable element that sets the desired height of the row. * - guide - the helper guide that shows the desired height as a horizontal guide. */ export declare class ManualRowResize 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; /** * Initializes the plugin and applies CSS classes to the resize handle and guide elements. */ constructor(hotInstance: HotInstance); /** * @private * @returns {string} */ get inlineDir(): "right" | "left"; /** * 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 ManualRowResize#enablePlugin} method is called. * * @returns {boolean} */ isEnabled(): boolean; /** * Enables the plugin functionality for this Handsontable instance. */ enablePlugin(): void; /** * Updates the plugin's state. * * This method is executed when [`updateSettings()`](@/api/core.md#updatesettings) is invoked with any of the following configuration options: * - [`manualRowResize`](@/api/options.md#manualrowresize) */ updatePlugin(): void; /** * Disables the plugin functionality for this Handsontable instance. */ disablePlugin(): void; /** * Deprecated. The `PersistentState` plugin has been removed. This method is a no-op and will be removed in a * future major release. * * @deprecated */ saveManualRowHeights(): void; /** * Deprecated. The `PersistentState` plugin has been removed. This method is a no-op and will be removed in a * future major release. * * @deprecated * @returns {Array} */ loadManualRowHeights(): Array; /** * Sets the new height for specified row index. * * @param {number} row Visual row index. * @param {number} height Row height. * @returns {number} Returns new height. */ setManualSize(row: number, height: number): number; /** * Returns the last desired row height set manually with the resize handle. * * @returns {number} The last desired row height. */ getLastDesiredRowHeight(): number; /** * Sets the resize handle position. * * @private * @param {HTMLCellElement} TH TH HTML element. */ setupHandlePosition(TH: HTMLTableHeaderCellElement): void; /** * Refresh the resize handle position. * * @private */ refreshHandlePosition(): void; /** * Sets the resize guide position. * * @private */ setupGuidePosition(): void; /** * Refresh the resize guide position. * * @private */ refreshGuidePosition(): void; /** * Hides both the resize handle and resize guide. * * @private */ hideHandleAndGuide(): void; /** * Checks if provided element is considered as a row header. * * @private * @param {HTMLElement} element HTML element. * @returns {boolean} */ checkIfRowHeader(element: HTMLElement): boolean; /** * Gets the TH element from the provided element. * * @private * @param {HTMLElement} element HTML element. * @returns {HTMLElement} */ getClosestTHParent(element: HTMLElement): HTMLElement | null; /** * Returns the actual height for the provided row index. * * @private * @param {number} row Visual row index. * @returns {number} Actual row height. */ getActualRowHeight(row: number): number | null; /** * Auto-size row after doubleclick - callback. * * @private * @fires Hooks#beforeRowResize * @fires Hooks#afterRowResize */ afterMouseDownTimeout(): void; /** * Binds the mouse events. * * @private */ bindEvents(): void; /** * Destroys the plugin instance. */ destroy(): void; }