import { CompletionContext, SweetLineIncrementalDecorationProvider, type IAnyRecord, type IAnyValue, type IEditorMetadata, type IEditorTextChange, type ITextPosition, type ITextRange, type IVisibleLineRange } from "@sweeteditor/core"; interface IEChartsStatic { init: (...args: IAnyValue[]) => IAnyValue; graphic?: IAnyRecord; } declare global { interface Window { echarts?: IEChartsStatic; } } export declare const EditorEventType: { readonly TEXT_CHANGED: "TextChangedEvent"; readonly CURSOR_CHANGED: "CursorChangedEvent"; readonly SELECTION_CHANGED: "SelectionChangedEvent"; readonly SCROLL_CHANGED: "ScrollChangedEvent"; readonly SCALE_CHANGED: "ScaleChangedEvent"; readonly LONG_PRESS: "LongPressEvent"; readonly DOUBLE_TAP: "DoubleTapEvent"; readonly CONTEXT_MENU: "ContextMenuEvent"; readonly INLAY_HINT_CLICK: "InlayHintClickEvent"; readonly GUTTER_ICON_CLICK: "GutterIconClickEvent"; readonly FOLD_TOGGLE: "FoldToggleEvent"; readonly DOCUMENT_LOADED: "DocumentLoadedEvent"; }; export declare class Canvas2DRenderer { [key: string]: IAnyValue; constructor(theme?: IAnyRecord); _prepareTextContext(ctx: IAnyValue): void; createTextMeasurerCallbacks(): { measureTextWidth: (text: string, fontStyle: number) => any; measureInlayHintWidth: (text: string) => any; measureIconWidth: (iconId: number) => any; getFontMetrics: () => { ascent: number; descent: any; }; }; applyTheme(theme?: IAnyRecord): { [x: string]: any; }; getTheme(): { [x: string]: any; }; setEditorIconProvider(provider: IAnyValue): void; getEditorIconProvider(): any; _setPixelSnapContext(ctx: IAnyRecord): void; _snapX(value: IAnyValue): number; _snapY(value: IAnyValue): number; _snapRect(x: number, y: number, width: number, height: number): { x: number; y: number; width: number; height: number; }; render(ctx: IAnyRecord, model: IAnyValue, viewportWidth: number, viewportHeight: number): void; _drawCurrentLine(ctx: IAnyRecord, model: IAnyValue, viewportWidth: number): void; _drawSelection(ctx: IAnyRecord, model: IAnyValue): void; _drawLines(ctx: IAnyRecord, model: IAnyValue): void; _drawRun(ctx: IAnyRecord, run: IAnyValue): void; _drawCursor(ctx: IAnyRecord, model: IAnyValue): void; _drawGutter(ctx: IAnyRecord, model: IAnyValue, viewportHeight: number): void; _fontByStyle(fontStyle: number): string; _drawInlayHintRun(ctx: IAnyRecord, run: IAnyValue, topY: number, style: IAnyValue, text: string): void; _drawGutterIcon(ctx: IAnyRecord, item: IAnyValue): void; _drawFoldMarker(ctx: IAnyRecord, marker: IAnyValue): void; _drawIconGlyphOrImage(ctx: IAnyRecord, iconId: number, x: number, y: number, width: number, height: number, inlay?: IAnyValue): void; _resolveIconDescriptor(iconId: number): any; } export declare class CompletionPopupController { [key: string]: IAnyValue; constructor(container: IAnyValue); setConfirmListener(listener: (...args: IAnyValue[]) => IAnyValue): void; setRenderer(renderer: IAnyValue): void; get isShowing(): boolean; updateCursorPosition(x: number, y: number, height: number): void; updateItems(items: IAnyValue[]): void; dismissPanel(): void; dispose(): void; handleKeyEvent(event: IAnyRecord): boolean; _show(): void; _applyPosition(): void; _renderItems(): void; _kindLetter(kind: string): "K" | "F" | "V" | "C" | "I" | "M" | "P" | "S" | "T"; _moveSelection(delta: number): void; _rerenderSelection(): void; _confirmSelected(): void; } export declare class SweetEditorWidget { [key: string]: IAnyValue; constructor(container: HTMLElement, wasmModule: IAnyValue, options?: IAnyRecord); getCore(): any; getDocumentFactory(): any; subscribe(eventType: IAnyValue, listener: (...args: IAnyValue[]) => IAnyValue): () => void; unsubscribe(eventType: IAnyValue, listener: (...args: IAnyValue[]) => IAnyValue): void; getSettings(): any; setKeyMap(keyMap: IAnyValue): void; getKeyMap(): any; applyTheme(theme?: IAnyRecord): any; getTheme(): any; setEditorIconProvider(provider: IAnyValue): void; getEditorIconProvider(): any; addNewLineActionProvider(provider: IAnyValue): void; removeNewLineActionProvider(provider: IAnyValue): void; setScale(scale: number): void; getScale(): number; setEditorTextSize(size: number): void; getEditorTextSize(): number; setFontFamily(family: string): void; getFontFamily(): string; setTypeface(typeface: string): void; getTypeface(): string; setFoldArrowMode(mode: IAnyValue): void; getFoldArrowMode(): number; setWrapMode(mode: IAnyValue): void; getWrapMode(): number; setShowSplitLine(show: boolean): void; isShowSplitLine(): boolean; setGutterSticky(sticky: boolean): void; isGutterSticky(): boolean; setGutterVisible(visible: boolean): void; isGutterVisible(): boolean; setCurrentLineRenderMode(mode: IAnyValue): void; getCurrentLineRenderMode(): number; setReadOnly(readOnly: boolean): void; isReadOnly(): boolean; setAutoIndentMode(mode: IAnyValue): void; getAutoIndentMode(): any; setMaxGutterIcons(count: number): void; getMaxGutterIcons(): number; setLineSpacing(add: number, mult: number): void; getLineSpacingAdd(): number; getLineSpacingMult(): number; setContentStartPadding(padding: number): void; getContentStartPadding(): any; setDecorationScrollRefreshMinIntervalMs(intervalMs: number): void; getDecorationScrollRefreshMinIntervalMs(): number; setDecorationOverscanViewportMultiplier(multiplier: number): void; getDecorationOverscanViewportMultiplier(): number; insert(text: string): any; insertText(text: string): any; replace(range: ITextRange, newText: string): any; replaceText(range: ITextRange, newText: string): any; delete(range: ITextRange): any; deleteText(range: ITextRange): any; moveLineUp(): boolean; moveLineDown(): boolean; copyLineUp(): boolean; copyLineDown(): boolean; deleteLine(): boolean; insertLineAbove(): boolean; insertLineBelow(): boolean; undo(): boolean; redo(): boolean; canUndo(): boolean; canRedo(): boolean; getCursorPosition(): any; setCursorPosition(position: ITextPosition): void; getSelection(): { hasSelection: boolean; range: any; }; getSelectionRange(): any; hasSelection(): boolean; setSelection(startOrRange: ITextRange | ITextPosition, startColumn: number, endLine: number, endColumn: number): void; clearSelection(): void; selectAll(): void; getSelectedText(): string; getWordRangeAtCursor(): any; getWordAtCursor(): string; copyToClipboard(): void; cutToClipboard(): void; pasteFromClipboard(): void; moveCursorLeft(extendSelection?: boolean): void; moveCursorRight(extendSelection?: boolean): void; moveCursorUp(extendSelection?: boolean): void; moveCursorDown(extendSelection?: boolean): void; moveCursorToLineStart(extendSelection?: boolean): void; moveCursorToLineEnd(extendSelection?: boolean): void; goto(line: number, column?: number): void; gotoPosition(line: number, column?: number): void; scrollToLine(line: number, behavior?: number): void; setScroll(scrollX: number, scrollY: number): void; getScrollMetrics(): any; getPositionRect(line: number, column: number): any; getCursorRect(): any; getViewState(): any; getLayoutMetrics(): any; setLineInlayHints(line: number, hints: IAnyValue[]): void; setBatchLineInlayHints(hintsByLine: IAnyValue): void; setLinePhantomTexts(line: number, phantoms: IAnyValue): void; setBatchLinePhantomTexts(phantomsByLine: IAnyValue): void; setLineGutterIcons(line: number, icons: IAnyValue[]): void; setBatchLineGutterIcons(iconsByLine: IAnyValue): void; setLineDiagnostics(line: number, diagnostics: IAnyValue[]): void; setBatchLineDiagnostics(diagsByLine: IAnyValue): void; setIndentGuides(guides: IAnyValue[]): void; setBatchIndentGuides(guides: IAnyValue[]): void; setBracketGuides(guides: IAnyValue[]): void; setBatchBracketGuides(guides: IAnyValue[]): void; setFlowGuides(guides: IAnyValue[]): void; setBatchFlowGuides(guides: IAnyValue[]): void; setSeparatorGuides(guides: IAnyValue[]): void; setBatchSeparatorGuides(guides: IAnyValue[]): void; setFoldRegions(regions: IAnyValue[]): void; setBatchFoldRegions(regions: IAnyValue[]): void; clearInlayHints(): void; clearPhantomTexts(): void; clearGutterIcons(): void; clearDiagnostics(): void; clearGuides(): void; clearAllDecorations(): void; insertSnippet(snippetTemplate: string): any; startLinkedEditing(model: IAnyValue): void; isInLinkedEditing(): boolean; linkedEditingNext(): boolean; linkedEditingPrev(): boolean; cancelLinkedEditing(): void; finishLinkedEditing(): void; toggleFoldAt(line: number): boolean; toggleFold(line: number): boolean; foldAt(line: number): boolean; unfoldAt(line: number): boolean; foldAll(): void; unfoldAll(): void; isLineVisible(line: number): boolean; setMatchedBrackets(open: IAnyValue, close: IAnyValue, closeLine: IAnyValue, closeColumn: IAnyValue): void; clearMatchedBrackets(): void; setLocale(locale: string): void; setPerformanceOverlayEnabled(enabled: boolean): void; isPerformanceOverlayEnabled(): boolean; setPerformanceOverlayVisible(visible: boolean): void; isPerformanceOverlayVisible(): boolean; getPerformanceStats(): { enabled: boolean; visible: boolean; updateIntervalMs: any; stutterThresholdMs: any; fps: number; avgFrameMs: number; avgBuildMs: number; avgDrawMs: number; avgRafLagMs: number; maxFrameMs: number; requeueCount: number; scrollSpeedY: number; stutterCount: number; lastStutterMs: number; maxStutterMs: number; lastOverlayUpdatedAt: number; stutterEvents: any; history: any; }; setLanguageConfiguration(config: IAnyRecord): void; getLanguageConfiguration(): any; setMetadata(metadata: IEditorMetadata): void; getMetadata(): any; getText(): string; getDocument(): any; loadDocument(document: IAnyValue): void; loadText(text: string, options?: IAnyRecord): void; dispose(): void; registerTextStyle(styleId: number, color: number, backgroundColor?: number, fontStyle?: number): void; registerBatchTextStyles(stylesById: IAnyValue): void; setLineSpans(line: number, layer: IAnyValue, spans: IAnyValue[]): void; setBatchLineSpans(layer: IAnyValue, spansByLine: IAnyValue): void; clearHighlights(layer?: IAnyValue): void; flush(): void; createSweetLineDecorationProvider(options?: IAnyRecord): SweetLineIncrementalDecorationProvider; addSweetLineDecorationProvider(options?: IAnyRecord): SweetLineIncrementalDecorationProvider; addDecorationProvider(provider: IAnyValue): void; removeDecorationProvider(provider: IAnyValue): void; requestDecorationRefresh(): void; setDecorationProviderOptions(options?: IAnyRecord): void; getDecorationProviderOptions(): any; setDecorationOptions(options?: IAnyRecord): void; getDecorationOptions(): any; addCompletionProvider(provider: IAnyValue): void; removeCompletionProvider(provider: IAnyValue): void; triggerCompletion(): void; showCompletionItems(items: IAnyValue[]): void; dismissCompletion(): void; setCompletionItemRenderer(renderer: IAnyValue): void; getVisibleLineRange(options?: IAnyRecord): { start: number; end: number; }; getTotalLineCount(): number; _createSettingsFacade(): { setEditorTextSize: (size: number) => void; getEditorTextSize: () => number; setFontFamily: (family: string) => void; getFontFamily: () => string; setTypeface: (typeface: string) => void; getTypeface: () => string; setScale: (scale: number) => void; getScale: () => number; setFoldArrowMode: (mode: IAnyValue) => void; getFoldArrowMode: () => number; setWrapMode: (mode: IAnyValue) => void; getWrapMode: () => number; setShowSplitLine: (show: boolean) => void; isShowSplitLine: () => boolean; setGutterSticky: (sticky: boolean) => void; isGutterSticky: () => boolean; setGutterVisible: (visible: boolean) => void; isGutterVisible: () => boolean; setCurrentLineRenderMode: (mode: IAnyValue) => void; getCurrentLineRenderMode: () => number; setReadOnly: (readOnly: boolean) => void; isReadOnly: () => boolean; setAutoIndentMode: (mode: IAnyValue) => void; getAutoIndentMode: () => any; setMaxGutterIcons: (count: number) => void; getMaxGutterIcons: () => any; setLineSpacing: (add: number, mult: number) => void; getLineSpacingAdd: () => number; getLineSpacingMult: () => number; getLineSpacing: () => { add: number; mult: number; }; setContentStartPadding: (padding: number) => void; getContentStartPadding: () => any; setDecorationScrollRefreshMinIntervalMs: (intervalMs: number) => void; getDecorationScrollRefreshMinIntervalMs: () => number; setDecorationOverscanViewportMultiplier: (multiplier: number) => void; getDecorationOverscanViewportMultiplier: () => number; flush: () => void; }; _applySettingsObject(settings: IAnyRecord): void; _emitEvent(eventType: IAnyValue, payload?: IAnyRecord): void; _emitTextChanged(action: string, range: ITextRange | null, text: string | null): void; _emitContextMenuEvent(cursorPosition: ITextPosition | null, screenPoint: IAnyValue, nativeEvent: IAnyRecord | null): void; _safeGetScrollMetrics(): any; _syncEventStateFromCore(): void; _emitCursorChanged(cursorPosition: ITextPosition | null, force?: boolean): void; _emitSelectionChanged(hasSelection: boolean, selection: IAnyValue, cursorPosition: ITextPosition | null, force?: boolean): void; _emitScrollScaleValues(scrollX: number, scrollY: number, scale: number, forceScroll?: IAnyValue, forceScale?: IAnyValue): void; _emitScrollScaleFromCore(forceScroll?: IAnyValue, forceScale?: IAnyValue): void; _emitScrollScaleFromGestureResult(result: IAnyValue, emitScroll?: boolean, emitScale?: boolean): void; _emitStateEventsFromCore(options?: IAnyRecord): void; _dispatchHitTargetEvents(hitTarget: IAnyValue, screenPoint: IAnyValue, nativeEvent: IAnyRecord | null): void; _fireGestureEvents(result: IAnyValue, screenPoint: IAnyValue, nativeEvent?: IAnyRecord | null): void; _provideNewLineAction(): any; _setupDom(): void; _bindEvents(): void; _isCompositionInputType(inputType: string): boolean; _setupPerformanceOverlay(): void; _nowMs(): number; _smoothValue(previous: IAnyValue, current: IAnyValue, alpha?: IAnyValue): number; _formatPerfRelativeSeconds(timestampMs: number): string; _classifyStutterReason(elapsedMs: number, now: IAnyValue): "build" | "draw" | "rafLag" | "blocked"; _recordStutterEvent(elapsedMs: number, now: IAnyValue): void; _refreshStutterEventList(): void; _applyPerformanceOverlayVisibility(): void; _refreshPerformanceOverlayLabels(): void; _refreshPerformanceOverlayValues(): void; _teardownPerformanceOverlay(): void; _ensurePerformanceChart(): void; _updatePerformanceChart(): void; _startPerformanceMonitor(): void; _stopPerformanceMonitor(): void; _recordPerformanceSample(sample?: IAnyValue): void; _pushPerformanceHistorySample(now: IAnyValue): void; _updatePerformanceOverlay(now?: IAnyValue): void; _debugInputTargetName(target: IAnyValue): string; _debugInputLog(eventName: string, payload?: IAnyRecord): void; _hasActiveCompositionFlow(): boolean; _invalidatePrintableFallback(): void; _suppressNextInputOnce(): void; _extractInputText(event: IAnyRecord, allowValueFallback?: IAnyValue): string; _applyDomTextInput(event: IAnyRecord, options?: IAnyRecord): boolean; _shouldSchedulePrintableFallback(event: IAnyRecord): boolean; _schedulePrintableFallback(event: IAnyRecord): boolean; _onBeforeInput(e: IAnyRecord): void; _onInput(e: IAnyRecord): void; _onPointerDown(event: IAnyRecord): void; _onPointerMove(event: IAnyRecord): void; _onPointerUp(event: IAnyRecord): void; _onPointerCancel(event: IAnyRecord): void; _onWheel(event: IAnyRecord): void; _onContextMenu(event: IAnyRecord): void; _handleDocumentPointerDown(event: IAnyRecord): void; _isBodyLikeElement(target: IAnyValue): boolean; _isTextEntryElement(target: IAnyValue): boolean; _shouldRouteDocumentKeyEvent(event: IAnyRecord): any; _handleDocumentKeyDown(event: IAnyRecord): void; _onKeyDown(event: IAnyRecord): void; _dispatchKeyMapCommand(keyCode: number, modifiers: number, event: IAnyRecord): "handled" | "pending" | "no_match"; _invokeEditorCommandHandler(handler: IAnyValue, commandId: number, binding: IAnyValue, event: IAnyValue): boolean; _executeEditorCommand(commandId: number): boolean; _runCommandThroughCoreKeyEvent(keyCode: number, modifiers: number): boolean; _dispatchGesture(type: string, points: IAnyValue[], domEvent: IAnyRecord, wheelX?: number, wheelY?: number, directScale?: number): void; _startEdgeScroll(): void; _stopEdgeScroll(): void; _modifiers(event: IAnyRecord): number; _mapKeyCode(event: IAnyRecord): any; _mapLegacyKeyCode(event: IAnyRecord): any; _eventPoint(event: IAnyRecord): { x: number; y: number; }; _clearTouchLongPressTimer(): void; _hasTouchMovedBeyondLongPressSlop(point: IAnyValue): boolean; _scheduleTouchLongPressCheck(pointerId: number, point: IAnyValue, sourceEvent: IAnyRecord): void; _syncInputAnchor(model: IAnyValue, viewportWidth: number, viewportHeight: number): void; _resize(): void; _markDirty(): void; _requestRender(): void; _safeBuildRenderModel(): any; _refreshRenderModelSnapshot(): any; _updateCompletionPopupCursorAnchor(): void; _buildCompletionContext(triggerKind: number, triggerCharacter: string): CompletionContext | null; _applyCompletionItem(item: IAnyValue): void; _isEmptyRange(range: ITextRange | null | undefined): boolean; _handleKeyEventResult(result: IAnyValue, options?: IAnyRecord): void; _handleTextEditResult(editResult: IAnyValue, options?: IAnyRecord): void; _triggerCompletionFromTextChanges(changes: IEditorTextChange[]): void; _applyMergedDecorations(merged: IAnyValue, visibleRange: IVisibleLineRange): void; _applySpanMode(layer: IAnyValue, mode: IAnyValue, startLine: number, endLine: number): void; _applyInlayMode(mode: IAnyValue, startLine: number, endLine: number): void; _applyDiagnosticMode(mode: IAnyValue, startLine: number, endLine: number): void; _applyGutterMode(mode: IAnyValue, startLine: number, endLine: number): void; _applyPhantomMode(mode: IAnyValue, startLine: number, endLine: number): void; _buildEmptyLineMap(startLine: number, endLine: number): Map; _applyLanguageBracketPairs(): void; _createContextMenu(): void; _refreshContextMenuLabels(): void; _setContextMenuItemDisabled(action: string, disabled: IAnyValue): void; _updateContextMenuState(): void; _showContextMenu(x: number, y: number): void; _hideContextMenu(): void; _runContextAction(action: string): Promise; _copySelectionToClipboard(isCut: boolean): Promise; _writeClipboardText(text: string): Promise; _readClipboardText(): Promise; _handleClipboardCopyCut(event: IAnyRecord, isCut: boolean): void; _handleClipboardPaste(event: IAnyRecord): void; } export {};