export declare function computeElapsed(startTime: number): { elapsedStr: string; elapsedS: number; }; export declare function formatMetricsSuffix({ costUsd, numTurns }: { costUsd: number | null; numTurns: number | null; }): string; /** Build "cortex-XXXX · `uuid`" tag for Slack status messages. */ export declare function buildSessionTag(sessionName: string | null, sessionId: string | null): string; export declare function buildUserProcessingMessage({ startTime, elapsed_s, num_turns, profileName, sessionName, sessionId }: { startTime: number; elapsed_s?: number | null; num_turns?: number | null; profileName: string; sessionName?: string | null; sessionId?: string | null; }): string; /** Build the multi-agent thread step status line. When task info is present (task-dispatch * threads carry taskProject/taskId/taskText in metadata) the line leads with the task identity * — "[proj] · `id`" — so a glance tells you what is running; the short thread id is kept * at the tail for thread-op debugging. Without task info it falls back to the thread-only form. */ export declare function buildThreadStatusMessage({ threadId, stepNumber, label, elapsedS, numTurns, taskProject, taskId, taskText }: { threadId: string; stepNumber: number; label: string; elapsedS: number; numTurns?: number | null; taskProject?: string | null; taskId?: string | null; taskText?: string | null; }): string;