///
/**
* Blocks the UI so that the user can't type anything or click any elements.
* Note that this only applies to built-in input and features, for custom
* features use [[isBlocked]] to check whether input should be accepted.
*
* Use [[unblock]] to remove the block.
*/
export declare function block(): void;
/**
* Close a tag that is currently open.
*
* Because the tags are added as DOM elements, the tag isn't really "open"
* in the sense that it would be missing the closing tag. Instead we jump
* out of the tag and set output focus back to its parent element.
*
* @see [[openTag]]
*
* @param targetWindow The target window in the Haven engine. This is practically always 0.
* @returns Returns true if a tag was open, false if we were already at the top window level and nothing was done.
*/
export declare function closeTag(targetWindow?: number): boolean;
/**
* Set output focus to an element.
*
* @param targetElement A jQuery object or selector
* @param targetWindow The target window in the Haven engine. This is practically always 0.
*
* @returns Returns true if the focus was set successfully, false if the element wasn't found.
*/
export declare function focus(targetElement: string | JQuery.PlainObject, targetWindow?: number): boolean;
/**
* Checks whether user input is blocked.
*
* @returns Returns true if input is blocked, otherwise false.
* @since 3.2.6
*/
export declare function isBlocked(): boolean;
/**
* Create a new HTML element, append it to the target window, and set the output
* focus to the element.
*
* Example:
* ```
* vorple.layout.openTag( 'div', 'vorple' ) -->
* ```
*
* @param tagName Name of the tag to create
* @param classes Class names to add to the element
* @param targetWindow The target window in the Haven engine. This is practically always 0.
*
* @see [[closeTag]]
*
* @returns Returns true.
*/
export declare function openTag(tagName: string, classes: string, targetWindow?: number): true;
/**
* Scroll an element into view. Scrolling is initiated only if the element
* isn't already fully in view or its top position is not in the top
* half of the page.
*
* If the element doesn't exist, the function doesn't do anything.
*
* @param target The target element
* @param speed The duration of the scroll animation in milliseconds
*
* @returns Returns a promise that resolves to true when the scroll animation
* ends, or resolves to false if no scrolling was needed (element doesn't
* exist or is already in view.)
*/
export declare function scrollTo(target: string | JQuery.PlainObject, speed?: number): Promise;
/**
* Scroll to the end of the document.
*
* @param speed The duration of the scroll animation in milliseconds
* @returns Returns a promise that resolves when the scroll animation ends.
*/
export declare function scrollToEnd(speed?: number): Promise;
/**
* Unblock the UI.
*
* @see [[block]]
*/
export declare function unblock(): void;