/**
* JQHTML Viewport Resize Dispatch
*
* One framework-owned, debounced window 'resize' listener fans out to every live
* component in the document by calling on_viewport_resize(viewport_width).
*
* Components never bind their own window listener, so there is nothing to unbind
* in on_stop() - a component that is stopped or removed from the document simply
* stops being found by the dispatcher.
*/
/** Trailing-edge debounce applied to the window resize listener. */
export declare const VIEWPORT_RESIZE_DEBOUNCE_MS = 30;
/**
* Current viewport width in CSS pixels.
*
* window.innerWidth is used (not $(window).width()) because it matches the width
* CSS media queries resolve against. It includes the scrollbar gutter.
*
* Returns 0 outside a browser (SSR).
*/
export declare function get_viewport_width(): number;
/**
* Call on_viewport_resize(width) on every component currently in the document.
*
* Walks $('.Component') in document order (parents before children). Elements
* with no component instance, stopped components, and components whose hook is
* still the base no-op (no override on the class or the instance) are skipped. A component
* that throws is logged and the walk continues - one bad handler must not stop
* the rest of the page from resizing.
*/
export declare function dispatch_viewport_resize(jQuery: any): void;
/**
* Install the single window resize listener. Idempotent - repeated init() calls
* and non-browser environments are no-ops.
*/
export declare function init_viewport_resize(jQuery: any): void;
//# sourceMappingURL=viewport.d.ts.map