import type { PlatformAdapter } from '../platform/index.js'; /** Feature gate: turn-completion notification is ON by default. */ export declare function isTurnNotifyEnabled(): boolean; /** Minimum turn duration (seconds) before a completion notification is pushed. */ export declare function getTurnNotifyThresholdS(): number; /** Push a NEW message to the conversation's channel when a long-running, user-initiated * turn finishes — so the user gets an actual push notification (editing the status * message to "✓ Done" does not notify on Slack or Feishu). Works for both Slack and * Feishu through the PlatformAdapter abstraction (Composite fans out to both). * * Gated by: feature flag, interactive-channel scope, and a duration threshold. * Never throws — a failed notification must not affect the main turn. */ export declare function maybeNotifyTurnComplete(params: { adapter: PlatformAdapter; channel: string; threadAnchorId: string | null; sessionName: string | null; sessionId: string | null; elapsedS: number; elapsedStr: string; status: 'completed' | 'failed'; metricsSuffix?: string; }): Promise;