UNPKG

medium-proeditor

Version:

A powerful & customizable Medium-style rich text editor

35 lines 1.21 kB
import type { Editor } from '../Editor'; import type { EditorView } from 'prosemirror-view'; import { Plugin } from 'prosemirror-state'; interface PopoverElement extends HTMLElement { _cleanup?: () => void; _cancelCleanup?: () => void; } export interface PopoverRule { className?: string; find: (target: PopoverElement) => boolean; content: (target: PopoverElement) => string | HTMLElement | null | undefined; } export default class PopoverHandler { private editor; private view; private rules; private hoverTooltip?; private updateDebounce; constructor(editor: Editor, view: EditorView, rules: PopoverRule[]); private handleHover; private showTooltip; private removeTooltip; static createPopover(className?: string): { container: HTMLElement; content: HTMLElement; arrow: HTMLElement; }; private attachListeners; private removeListeners; static updatePosition(trigger: HTMLElement, container: HTMLElement, arrowElem: HTMLElement): Promise<void>; destroy(): void; } export declare function popoverPlugin(editor: Editor, rules: PopoverRule[]): Plugin<any>; export {}; //# sourceMappingURL=popover.d.ts.map