import * as monaco from 'monaco-editor/esm/vs/editor/editor.api'; import React from 'react'; import type { TEditorLanguage } from "./types"; import { getTheme, onDidChangeTheme } from "./utils/themes"; import { formattingEditorContent } from "./format"; import { EMonacoEditorTheme } from "./constants"; export * from "./constants"; export * from "./types"; export * from "./utils/themes"; export * from "./utils/workers"; export * from "./format"; export * from "./setupTsxMode"; export type Monaco = typeof monaco; export interface IMonacoEditorImperativeHandles { getEditor: () => monaco.editor.IStandaloneCodeEditor | null; format: (text?: string, lang?: TEditorLanguage) => ReturnType; monaco: Monaco; } export interface IMonacoEditorProps { width?: string | number; height?: string | number; prefixCls?: string; value?: string; defaultValue?: string; className?: string; language: TEditorLanguage; theme?: EMonacoEditorTheme; readOnly?: boolean; highlightWhitespace?: boolean; highlightActiveLine?: boolean; formatOnSave?: boolean; options?: monaco.editor.IStandaloneEditorConstructionOptions; onChange?: (value: string, event: monaco.editor.IModelContentChangedEvent) => void; onWillMount?: (monaco: Monaco) => void; onMount?: (editor: monaco.editor.IStandaloneCodeEditor, monaco: Monaco) => void; onWillUnmount?: (editor: monaco.editor.IStandaloneCodeEditor, monaco: Monaco) => void; getWebAppTheme?: typeof getTheme; onWebAppThemeChange?: typeof onDidChangeTheme; } declare const _default: React.ForwardRefExoticComponent>; export default _default;