jamis
Version:
一种支持通过JSON配置方式生成页面的组件库
29 lines (28 loc) • 1.15 kB
TypeScript
/**
* @file 扩展 codemirror
*/
import type CodeMirror from 'codemirror';
import type { FormulaEditorProps, VariableItem } from '../../types';
export declare function editorFactory(dom: HTMLElement, cm: typeof CodeMirror, props: any): CodeMirror.Editor;
export declare class FormulaPlugin {
readonly editor: CodeMirror.Editor;
readonly cm: typeof CodeMirror;
readonly getProps: () => FormulaEditorProps;
constructor(editor: CodeMirror.Editor, cm: typeof CodeMirror, getProps: () => FormulaEditorProps);
autoMarkText(): void;
computedBracesPosition(exp: string): {
begin: number;
end: number;
}[];
checkStrIsInBraces([from, to]: number[], braces: {
begin: number;
end: number;
}[]): boolean;
insertBraces(originFrom: CodeMirror.Position, originTo: CodeMirror.Position): void;
insertContent(value: any, type?: 'variable' | 'func'): void;
markText(from: CodeMirror.Position, to: CodeMirror.Position, label: string, className?: string): void;
autoMark(variables: Array<VariableItem>): void;
focus(value: string): void;
dispose(): void;
validate(): void;
}