import type { Theme } from "@earendil-works/pi-coding-agent";
import type { NodeStatus } from "../orchestrator-tree.js";
export type { Theme };
export declare function dim(text: string, theme: Theme): string;
export declare function accent(text: string, theme: Theme): string;
export declare function accentBold(text: string, theme: Theme): string;
export declare function warn(text: string, theme: Theme): string;
export declare function bold(text: string, theme: Theme): string;
/** Border characters — themed. */
export declare function border(text: string, theme: Theme): string;
/** Cursor glyph — accent-coloured arrow when selected, space otherwise. */
export declare function cursor(isSelected: boolean, theme: Theme): string;
/** Collapse indicator for orchestrator nodes (▸). */
export declare function collapseIndicator(theme: Theme): string;
/** Prompt expand/collapse chevron. */
export declare function promptExpandIcon(isExpanded: boolean, theme: Theme): string;
/** Status glyph for a node — themed per status colour. */
export declare function nodeGlyph(status: NodeStatus, theme: Theme): string;
/** Human-readable status label. */
export declare function statusLabel(status: NodeStatus): string;
/** Cancel-confirmation prompt warning glyph. */
export declare function cancelWarningGlyph(theme: Theme): string;
/**
 * Truncate every line to the given visible width. Applied as a final
 * safety guard in every screen renderer so no line overflows the terminal.
 */
export declare function truncateLines(lines: string[], width: number): string[];
