import { Plugin, ProseMirror, Schema } from '../../prosemirror'; import { CodeBlockNodeType } from '../../schema'; export declare class CodeBlockState { active: boolean; content?: string; element?: HTMLElement; language?: string; private pm; private changeHandlers; private activeCodeBlock?; constructor(pm: PM); subscribe(cb: CodeBlockStateSubscriber): void; unsubscribe(cb: CodeBlockStateSubscriber): void; updateLanguage(language: string): void; splitCodeBlock(): boolean; private deleteCharBefore(); private lastCharIsNewline(node); private cursorIsAtTheEndOfLine(); private update(); private activeCodeBlockElement(); private nodeStartPos(); private activeCodeBlockNode(); } export interface S extends Schema { nodes: { code_block?: CodeBlockNodeType; }; } export interface PM extends ProseMirror { schema: S; } export declare type CodeBlockStateSubscriber = (state: CodeBlockState) => any; declare var _default: Plugin; export default _default;