import { DotCMSPageResponse } from '@dotcms/types';
/**
 * Sets up scroll event handlers for the window to notify the editor about scroll events.
 * Adds listeners for both 'scroll' and 'scrollend' events, sending appropriate messages
 * to the editor when these events occur.
 */
export declare function scrollHandler(): {
    destroyScrollHandler: () => void;
};
/**
 * Adds 'empty-contentlet' class to contentlet elements that have no height.
 * This helps identify and style empty contentlets in the editor view.
 *
 * @remarks
 * The function queries all elements with data-dot-object="contentlet" attribute
 * and checks their clientHeight. If an element has no height (clientHeight = 0),
 * it adds the 'empty-contentlet' class to that element.
 */
export declare function addClassToEmptyContentlets(): void;
/**
 * Registers event handlers for various UVE (Universal Visual Editor) events.
 *
 * This function sets up subscriptions for:
 * - Page reload events that refresh the window
 * - Bounds request events to update editor boundaries
 * - Iframe scroll events to handle smooth scrolling within bounds
 * - Contentlet hover events to notify the editor
 *
 * @remarks
 * For scroll events, the function includes logic to prevent scrolling beyond
 * the top or bottom boundaries of the iframe, which helps maintain proper
 * scroll event handling.
 */
export declare function registerUVEEvents(): {
    subscriptions: import("@dotcms/types").UVEEventSubscription[];
};
/**
 * Notifies the editor that the UVE client is ready to receive messages.
 *
 * This function sends a message to the editor indicating that the client-side
 * initialization is complete and it's ready to handle editor interactions.
 *
 * @remarks
 * This is typically called after all UVE event handlers and DOM listeners
 * have been set up successfully.
 */
export declare function setClientIsReady(config?: DotCMSPageResponse): void;
/**
 * Listen for block editor inline event.
 */
export declare function listenBlockEditorInlineEvent(): {
    destroyListenBlockEditorInlineEvent: () => void;
};
/**
 * Injects UVE editor styles for empty containers and contentlets into the page.
 * Provides visual placeholders so editors can identify and interact with empty areas.
 *
 * The empty-container label is read from the dotCMS i18n cache in localStorage
 * (`dotMessagesKeys`). Falls back to 'Empty container' if the cache is unavailable
 * (e.g. headless pages on a different origin).
 */
export declare function injectEmptyStateStyles(): void;
