import { ViewUpdate } from "@codemirror/view"; import "./styles/style.scss"; export interface JsEditorProps { autoFocus?: boolean; /** * 是否在编辑器内部捕获 Tab 键: * - true: Tab 用于缩进/补全,焦点不会跳出编辑器 * - false: Tab 按浏览器默认行为在可聚焦元素之间切换 */ captureTabKey?: boolean; className?: string; debouncedDelayMs?: number; disabled?: boolean; lineWrapping?: boolean; onChange?(value: string, viewUpdate: ViewUpdate): void; /** * 延迟触发的变更回调(防抖),适合避免每次输入都触发。 * 当你只关心用户停顿后的结果时,可以只使用这个回调。 */ onDebouncedChange?(value: string, viewUpdate: ViewUpdate): void; /** * 结束触发回调:在编辑结束(例如编辑器失焦)时触发一次,返回最终代码内容。 * 适合只在用户完成编辑后进行保存或校验。 */ onEndChange?(value: string): void; onFormat?: (formattedCode: string) => void; placeholder?: string; readonly?: boolean; selected?: boolean; value?: string; variant?: "default" | "light" | "dark" | "reset"; } export declare function JsEditor(props: JsEditorProps): import("react/jsx-runtime").JSX.Element;