import type { EngineContext } from '../wire'; /** * Assembles the ResizeMonitor's dependencies from the engine composition context. It needs only the * settings accessor (to fire the `onContainerElementResize` setting) and the master table (for the * wrapper element it observes) — no callback back into the owning Overlays coordinator. * * @param {EngineContext} ctx The engine composition context. * @returns {object} The ResizeMonitor dependency set. */ export declare function createResizeMonitorDeps(ctx: EngineContext): { wtSettings: import("../settings").default; wtTable: import("../table/baseTable").default; }; /** * The ResizeMonitor dependencies, inferred from `createResizeMonitorDeps`. */ export type ResizeMonitorDeps = ReturnType; /** * Watches the Walkontable wrapper's parent element for size changes and fires the * `onContainerElementResize` setting when one is detected. * * The class owns the `ResizeObserver` plus the endless-loop guard: a dynamic parent size (for example * `dvh` units) can make the observer callback re-trigger itself indefinitely, so a rolling count with * a short reset window disconnects the observer once the callback fires too many times in direct * succession. Extracted from the Overlays coordinator so the loop-guard lifecycle stays self-contained. * * @class ResizeMonitor */ export declare class ResizeMonitor { #private; /** * @param {ResizeMonitorDeps} deps The ResizeMonitor dependencies. */ constructor(deps: ResizeMonitorDeps); /** * Starts observing the Walkontable wrapper's parent element for size changes. No-op when the * wrapper has no parent element. */ observe(): void; /** * Resets the direct-succession resize counter. Called when a window resize accounts for the size * change, so it is excluded from the endless-loop-blocking logic. */ resetResizeCount(): void; /** * Cleans up on destroy: clears the pending reset timeout and disconnects the observer. */ destroy(): void; }