/**
 * Wrap text in a bracketed-paste sequence + trailing CR for CLI submission.
 *
 * Strips ESC + CR from the body so user content / variable values can't
 * close paste mode prematurely or inject control sequences into the TUI.
 * LF / TAB preserved.
 */
export declare function buildPaste(text: string): string;
/**
 * Write a terminal_input payload to the PTY, splitting a bracketed-paste
 * body from its trailing submit CR with a short delay between them.
 *
 * Claude Ink TUI's paste heuristic folds any bracketed-paste body whose
 * closing `\r` arrives in the same PTY read chunk into a `[Pasted text
 * #N +M lines]` attachment that requires a SECOND Enter to submit.
 * Splitting body and `\r` across two PTY reads (with a 200ms gap) makes
 * Ink see the `\r` as an independent Enter keypress and submit reliably.
 *
 * Non-paste writes (keystrokes, focus events, slash commands, Ctrl+C)
 * pass through unchanged — they don't trigger Ink's paste heuristic and
 * shouldn't be queued behind a pending paste submit's delay.
 */
export declare function writeTerminalInputSplit(projectId: string, data: string): void;
//# sourceMappingURL=terminal-paste.d.ts.map