import { EditorView, ViewUpdate } from "@codemirror/view"; import { Extension } from "@codemirror/state"; import "./styles/style.scss"; export interface CursorPosition { column: number; line: number; } export interface CodeEditorProps { autoFocus?: boolean; className?: string; customExtensions?: Extension[]; lineWrapping?: boolean; onChange?(value: string, viewUpdate: ViewUpdate): void; onCursorChange?(position: CursorPosition): void; onEditorUpdate?: (update: ViewUpdate) => void; onFormat?: (formattedCode: string) => void; onSelectionChange?(characterCount: number): void; placeholder?: string | HTMLElement; readonly?: boolean; value?: string; } export interface CodeEditorRef { getCursorPosition: () => CursorPosition | null; getEditor: () => EditorView | null; getSelectedCharacterCount: () => number; } export declare const CodeEditor: import("react").ForwardRefExoticComponent>;