export declare function addClass(dom: Element, ...className: Array): void; export declare function getEndOffset(dom: Node | null): number; export declare function getFirstDeepChild(dom: Node | null): Node | null; export declare function getIndex(dom: Node | null): number; export declare function getLastDeepChild(dom: Node | null): Node | null; export declare function hasClass(dom: Node | null, className: string): boolean; export declare function isEqual(domA: Node, domB: Node): boolean; export declare function isTag(dom: Node, ...tagNames: Array): boolean; export declare function isVisible(target: HTMLElement): boolean; export declare function nextDeepChild(dom: Node | null, end?: Node | null): Node | null; export declare function prevDeepChild(dom: Node | null, end?: Node | null): Node | null; export declare function removeClass(dom: Element, ...className: Array): void; export declare function removeClassByReg(dom: Element, reg: RegExp): void; export declare function splitTextNode(node: Text, index: number): boolean; export declare function isChildNode(parent: Node, child: Node): boolean; export declare function nodeInRange(node: Node, range: Range): boolean; export declare function filterForHtmlToText(text: string): string; export interface TextToHtmlSpaceOptions { first: boolean; last: boolean; } export declare function filterForTextToHtml(text: string, options: TextToHtmlSpaceOptions): string; export declare function isNodeBefore(node1: Node, node2: Node): boolean; export declare function moveCaretToLineEnd(): void; export declare function getNearestElement(elements: T[], x: number, y: number): T; export declare function getScrollContainer(element: HTMLElement): HTMLElement; export declare function getScrollContainerRect(scrollContainer: HTMLElement): DOMRect; export declare function isPointNearbyElementLeft(element: HTMLElement, x: number, y: number): boolean; export declare function scrollIntoView(dom: Element, scrollIntoViewIfNeeded: boolean | undefined, options?: any): void; export declare function createElement(tagName: K, classes: string[], parent: HTMLElement | DocumentFragment | null, innerText?: string): HTMLElementTagNameMap[K]; export declare function createCheckbox(classes: string[], parent: HTMLElement | null, label: string, labelClasses: string[]): HTMLInputElement; export declare function createIconButton(svg: string, classes: string[], parent: HTMLElement | null): HTMLButtonElement; export declare function createButton(text: string, classes: string[], parent: HTMLElement | null): HTMLButtonElement; export declare function loadJsPromise(url: string, id: string): Promise; export declare function loadCssPromise(url: string, id: string): Promise; export declare function stringToDataUrl(data: string, type: string): Promise; export declare function fileToDataUrl(file: File): Promise; export declare function fixContainerForFullscreen(container: HTMLElement): HTMLElement; export declare function isMouseInPopoverTarget(event: MouseEvent, popoverTarget: HTMLElement | undefined, xSpace: number, ySpace: number): boolean; export declare function animatedScrollTo(element: HTMLElement, to: number, duration?: number): Promise; export declare function isDarkMode(): boolean; export declare function getElementTop(el: HTMLElement, target?: HTMLElement): number; export declare function createStyle(cssText: string, id: string): HTMLElement; export declare function inlineImage(root: HTMLElement): Promise; export declare function getRangeRect(range: Range, options?: { onlyCollapsed?: boolean; }): DOMRect | null; export declare function getDomRect(dom: Element): DOMRect; export declare function getElementByClass(parent: HTMLElement, className: string, tag?: string, bindEvent?: { [K in keyof HTMLElementEventMap]?: (this: HTMLElement, ev: HTMLElementEventMap[K]) => void; }): HTMLElement; export declare function imageToFile(image: HTMLImageElement): Promise; export declare function caretPositionFromPoint(x: number, y: number): { node: Node; offset: number; }; export declare function getClosestElement(node: Node): Element | null; export declare function requestFullscreen(elem: Element): Promise; export declare function exitFullscreen(): Promise;