/** * Custom editor that handles app-level keybindings for Mastra Code. */ import { Editor } from '@mariozechner/pi-tui'; import type { EditorTheme, TUI } from '@mariozechner/pi-tui'; import type { ClipboardImage } from '../../clipboard/index.js'; import type { GradientAnimator } from './obi-loader.js'; export type AppAction = 'clear' | 'exit' | 'suspend' | 'undo' | 'toggleThinking' | 'expandTools' | 'followUp' | 'queueFollowUp' | 'cycleMode' | 'toggleYolo'; export declare class CustomEditor extends Editor { private actionHandlers; onCtrlD?: () => void; escapeEnabled: boolean; onImagePaste?: (image: ClipboardImage) => void; getModeColor?: () => string | undefined; getPromptAnimator?: () => GradientAnimator | undefined; private pendingBracketedPaste; private _cachedModeColorHex?; private _cachedColorFn?; private promptIcon; private lastPromptWasInvisible; constructor(tui: TUI, theme: EditorTheme); onAction(action: AppAction, handler: () => unknown): void; render(width: number): string[]; private maybeHandleBracketedPaste; private shouldPasteClipboardImage; private getClipboardImageForPastedRemoteImageUrl; private readPastedImageSource; private normalizePastedPathLike; private normalizePastedImageUrl; private normalizePastedFilePath; private getImageMimeType; private handleExplicitPaste; private completeAutocompleteSelection; handleInput(data: string): void; } //# sourceMappingURL=custom-editor.d.ts.map