import { type Component } from "@earendil-works/pi-tui"; import type { TaskRecord } from "../../../core/tasks/contracts.js"; import type { TaskActivity } from "../../../core/tasks/owner-store.js"; /** Control removal and truncation apply only to terminal display, never task identity. */ export declare function taskDisplayText(text: string): string; export declare function taskState(task: TaskRecord): string; export declare function taskLabel(task: TaskRecord): string; export declare function taskTitle(task: TaskRecord): string; export declare function taskModelText(task: Pick): string; export declare function taskShortId(task: TaskRecord): string; export declare function taskDuration(milliseconds: number): string; /** One semantic status palette for inline rows, lists and detail headers. */ export declare function taskStatusAppearance(task: TaskRecord): { label: string; icon: string; color: "accent" | "success" | "error" | "warning" | "muted"; }; export declare function taskMetricsText(task: TaskRecord): string; export type TaskRowOptions = { expanded?: boolean; duplicate?: boolean; hint?: boolean; siblings?: readonly TaskRecord[]; activity?: readonly TaskActivity[]; activityOmitted?: boolean; }; export declare class TaskRow implements Component { private readonly task; private readonly options; constructor(task: TaskRecord, options?: TaskRowOptions); invalidate(): void; render(width: number): string[]; } //# sourceMappingURL=task-row.d.ts.map