import type { EditorOptions, GetHTMLOptions, JSONContent } from './types';
/** Medium ProEditor */
export declare class Editor {
    private view;
    private featuresManager;
    /** The editor storage */
    storage: Record<string, any>;
    /** The editor options */
    options: EditorOptions;
    constructor(options?: Partial<EditorOptions>);
    /**
     * Creates a ProseMirror view.
     */
    private createView;
    /**
     * Dispatches editor state transactions
     */
    private dispatchTransaction;
    /**
     * Update editor options.
     *
     * @param options A list of options
     */
    setOptions(options?: Partial<EditorOptions>): void;
    /**
     * Update editable state of the editor.
     *
     * @param editable Enable or disable editing.
     */
    setEditable(editable: boolean): void;
    /**
     * Updates the editor content
     */
    setContent(): void;
    /**
     * Updates the editor messages
     */
    setMessages(): void;
    /**
     * Returns the editor’s initial content
     */
    getInitialContent(): JSONContent;
    /**
     * Get the document as JSON.
     */
    getJSON(): JSONContent;
    /**
     * Get the document as published HTML.
     */
    getHTML(options?: GetHTMLOptions): string;
    /**
     * Get the document as text.
     */
    getText(options?: {
        blockSeparator?: string;
    }): string;
    /**
     * Get the document metadata, including headline set and featured image.
     */
    getMetadata(): import("./util/getMetadata").Metadata;
    /**
     * Checks if the editor has no content.
     */
    get isEmpty(): boolean;
    /**
     * Checks if the editor is currently editable.
     */
    get isEditable(): boolean;
    /**
     * Check if the editor is already destroyed.
     */
    get isDestroyed(): boolean;
    /**
     * Destroy the editor.
     */
    destroy(): void;
    /**
     * Attach event listeners.
     */
    private attachListeners;
    /**
     * Remove all event listeners.
     */
    private removeAllListeners;
}
//# sourceMappingURL=Editor.d.ts.map