import React from 'react'; import './index.less'; import { Editor as TiptapEditor } from '@tiptap/react'; import { VibeCodingAttrs } from '../extensions/VibeCoding'; type EditorExtensionOptions = { vibecoding?: boolean; }; type EditorProps = { showTitle?: boolean; showCatalogue?: boolean; apiUrl?: string; xternUrl?: string; wsUrl?: any; markdownText?: string; editable?: boolean; templateInfo?: any; title?: string; titleOnChange?: (value: string) => void; titleEditable?: boolean; onExec?: (value: any) => void; onCodeExec?: (value: { language: string; code: string; template?: any; }) => Promise<{ success: boolean; data?: string; error?: string; }>; codeEditable?: boolean; runCodeEditorHeight?: number | string; runCodeResultHeight?: number | string; onBack?: () => void; setHeader?: any; finish?: () => void; reportData?: (data: any) => void; getActivity?: (id: string) => Promise; removeActivity?: (id: string) => Promise; updateActivity?: (value: any) => Promise; submitActivity?: (value: any) => void; codePlayerConnect?: any; codePlayerLanguageList?: any[]; showTemplate?: () => void; imageOnClick?: (src: string) => void; disableCopy?: boolean; onChange?: (mdText: string, editor: TiptapEditor) => void; canAddFromBank?: boolean; getTboxAuthCode?: () => Promise; onVibeCodingClick?: (attrs: VibeCodingAttrs) => void; extensions?: EditorExtensionOptions; [key: string]: any; }; declare let Editor: React.FC; export default Editor;