/**
 * Robust consolidated-escalation send for SentinelNotifier.
 *
 * Background (incident 2026-06-09): the sentinel's `sendConsolidated` closures
 * did `try { sendToTopic(lifelineTopicId) } catch { return false }`. The
 * configured lifeline/system topic had been DELETED on the Telegram side, so
 * every send returned `400: message thread not found` — and the bare `catch`
 * black-holed it. 41 stall escalations in one day failed silently; the user got
 * pure silence and could not tell a stalled session from a working one.
 *
 * `TelegramAdapter.ensureLifelineTopic()` already knows how to recreate a
 * deleted lifeline topic and persist the new id — the send path just never
 * invoked it. This helper closes that gap: send to the lifeline topic; on
 * failure, self-heal via ensureLifelineTopic() and retry once; and NEVER
 * swallow the error silently (it is always logged).
 *
 * Pure + adapter-injected so it is unit-testable without a live Telegram.
 */
export interface ConsolidatedSendTelegram {
    getLifelineTopicId(): number | undefined | null;
    sendToTopic(topicId: number, text: string): Promise<unknown>;
    /** Recreates the lifeline/system topic if deleted, persists the new id, returns it (or null). */
    ensureLifelineTopic(): Promise<number | null>;
}
export declare function sendConsolidatedWithSelfHeal(tg: ConsolidatedSendTelegram, text: string, log: (line: string) => void): Promise<boolean>;
//# sourceMappingURL=sentinelConsolidatedSend.d.ts.map