export interface ScrollbarGutterHold {
    /**
     * Call once the lock's own styles are applied: measures whether the element
     * grew anyway and, only then, pads the difference away.
     */
    settle(): void;
    /** Call on unlock: restores everything this hold changed. */
    release(): void;
}
/**
 * Keeps `element`'s content box the width it is right now, across a scroll
 * lock that is about to hide the document's scrollbar.
 *
 * Call it *before* applying the lock's styles, then {@link
 * ScrollbarGutterHold.settle} immediately after, and {@link
 * ScrollbarGutterHold.release} on unlock:
 *
 * ```
 * const hold = holdScrollbarGutter(document.body);
 * body.style.position = 'fixed';
 * hold.settle();
 * ```
 *
 * Overlay scrollbars (mobile, default macOS) take no layout space, so there is
 * nothing to hold and nothing is touched.
 */
export declare function holdScrollbarGutter(element: HTMLElement): ScrollbarGutterHold;
//# sourceMappingURL=scrollbarGutter.d.ts.map