/**
 * Multi-line editor component for hooks and ask custom input.
 * Supports Ctrl+G for external editor.
 *
 * Two modes:
 * - Default (hook): Enter inserts newline, the `app.message.followUp` chord
 *   (Ctrl+Q / Ctrl+Enter) submits, bordered popup
 * - Prompt-style (ask): Enter submits, Shift+Enter inserts newline, legacy ask chrome
 */
import { Container, type TUI } from "@oh-my-pi/pi-tui";
export interface HookEditorOptions {
    /** When true, use prompt-style keybindings with the legacy ask prompt chrome. */
    promptStyle?: boolean;
}
export declare class HookEditorComponent extends Container {
    #private;
    constructor(tui: TUI, title: string, prefill: string | undefined, onSubmit: (value: string) => void, onCancel: () => void, options?: HookEditorOptions);
    handleInput(keyData: string): void;
    /** Route non-bracketed paste transports (e.g. kitty's OSC 5522 enhanced clipboard)
     *  into the inner editor, mirroring bracketed-paste semantics. Without this hook,
     *  enhanced-paste routing falls back to the main prompt editor hidden behind the
     *  dialog (#2127 routing contract). */
    pasteText(text: string): void;
}
