import type { DaemonSession } from './types.js';
export declare function markSessionActivity(ds: DaemonSession, at?: number): void;
/** Push the current attention signals (repo-selection pending / TUI prompt
 *  open) to the dashboard. Call after mutating `ds.pendingRepo` or
 *  `ds.tuiPromptCardId` so the board view's needs-you column tracks live
 *  state. Idempotent — patches are derived from the session, never toggled
 *  blindly. */
export declare function publishAttentionPatch(ds: DaemonSession): void;
export declare function clearAgentAttention(ds: DaemonSession): boolean;
/** Announce a repo-selection-pending session to dashboard SSE subscribers.
 *
 *  `session.spawned` is normally published when the worker process spawns —
 *  but a pendingRepo session has NO worker yet (it sits in activeSessions
 *  waiting for a card click), so SSE-only dashboard clients never learn it
 *  exists until the next full hydrate. Call this right after registering such
 *  a session. No-op when the session isn't actually pending, so callers on
 *  mixed paths (`pendingRepo: !pinnedWorkingDir`) can call unconditionally —
 *  the non-pending branch is announced by the real spawn moments later. */
export declare function announcePendingRepoSession(ds: DaemonSession): void;
//# sourceMappingURL=session-activity.d.ts.map