import { Plugin, ProseMirror, Schema } from 'ak-editor-prosemirror'; import { LinkMarkType } from 'ak-editor-schema'; export declare type StateChangeHandler = (state: HyperlinkState) => void; export declare class HyperlinkState { private changeHandlers; private inputRules; private pm; href?: string; text?: string; active: boolean; canAddLink: boolean; element?: HTMLElement; constructor(pm: PM); private updateElement(); private update(); subscribe(cb: StateChangeHandler): void; unsubscribe(cb: StateChangeHandler): void; addLink(options: HyperlinkOptions): void; removeLink(forceTextSelection?: boolean): void; updateLink(options: HyperlinkOptions): void; detach(pm: ProseMirror): void; private getDomElement(); private isActiveNodeLinkable(); private getActiveNode(); private getActiveLink(); } declare var _default: Plugin; export default _default; export interface S extends Schema { marks: { link?: LinkMarkType; }; } export interface PM extends ProseMirror { schema: S; } export interface HyperlinkOptions { href: string; }