/**
 * OwlCoda TUI Text Utilities
 *
 * Width-aware text wrapping, truncation, and measurement.
 * Handles ANSI escape codes correctly during wrapping/truncation.
 */
/**
 * Truncate a string to `maxWidth` visible characters, adding ellipsis.
 * Preserves ANSI codes (removed from width calculation).
 */
export declare function truncate(text: string, maxWidth: number, ellipsis?: string): string;
/**
 * Truncate in the middle: keep start and end, replace middle with ellipsis.
 * Useful for file paths.
 */
export declare function truncateMiddle(text: string, maxWidth: number, ellipsis?: string): string;
/**
 * Wrap text to fit within `maxWidth` visible columns.
 * Respects word boundaries when possible.
 * Strips existing ANSI codes and re-applies aren't practical for word-wrap,
 * so this operates on plain text.
 */
export declare function wordWrap(text: string, maxWidth: number): string[];
/**
 * Hard wrap: break at exactly maxWidth characters regardless of words.
 */
export declare function hardWrap(text: string, maxWidth: number): string[];
/**
 * Pad a string to a fixed visible width (right-padded with spaces).
 */
export declare function padRight(text: string, width: number): string;
/**
 * Pad a string to a fixed visible width (left-padded with spaces).
 */
export declare function padLeft(text: string, width: number): string;
/**
 * Center a string within a fixed visible width.
 */
export declare function center(text: string, width: number): string;
/**
 * Repeat a character to fill a width.
 */
export declare function repeat(char: string, width: number): string;
