import type { ChatMessage } from '@genesislcap/foundation-ai';
/**
 * Sum input + output tokens across a message list, recursing into each tool
 * call's `subAgentTrace` so sub-agent LLM usage contributes to the total.
 *
 * Returns 0 when no message carries token metadata.
 *
 * @internal
 */
export declare function sumTokens(messages: readonly ChatMessage[]): number;
/**
 * Compact plain-text token count (e.g. 1_400_000 → "1.4M").
 *
 * @internal
 */
export declare function formatCompactTokenCountPlain(tokens: number): string;
/**
 * Compact display for large token counts (e.g. 1_400_000 → value "1.4" + suffix "M").
 * Returns HTML markup so the suffix can be styled separately in the settings modal.
 *
 * @internal
 */
export declare function formatCompactTokenCount(tokens: number): string;
/** {@link formatCompactTokenCount} passed through DOMPurify for `:innerHTML` bindings. */
export declare function formatCompactTokenCountSafe(tokens: number): string;
//# sourceMappingURL=sum-tokens.d.ts.map