/**
 * Bookmarked sessions — the durable "keep this one handy" mark a human puts on a
 * session, deliberately kept OUT of the session index.
 *
 * `sessions.db` is a rebuildable CACHE: a reindex or a schema bump throws its
 * rows away and re-derives them from the transcripts on disk. A bookmark is not
 * derivable from a transcript — it is a human's choice — so a column there would
 * be silently lost on the next rebuild. It lives in `~/.agents/.history/` instead,
 * next to the actor sidecars, which is never pruned.
 *
 * One flat set of session ids. The id is the transcript's own uuid, so it is
 * stable and machine-independent — but the file is NOT synced today: session sync
 * carries `.history/backups/` (`lib/session/sync/agents.ts`), not this. Bookmarks
 * are therefore per-machine; carrying them across the fleet would mean adding
 * them to the sync manifest, which this does not do.
 *
 * Reads are memoized against the file's mtime — the picker asks `isBookmarked` once
 * per rendered row, and re-reading a JSON file per row on every keystroke is the
 * kind of cost that makes a TUI feel broken.
 */
export declare function bookmarksFilePath(): string;
/** Drop the memoized read. Tests that write the file directly need this; nothing
 *  in the CLI does, because every mutation here refreshes the cache itself. */
export declare function clearBookmarksCache(): void;
/**
 * Every bookmarked session id. Empty (never throws) when the file is absent,
 * unreadable, or malformed — a corrupt bookmarks file must not take down
 * `agents sessions`.
 */
export declare function listBookmarks(): Set<string>;
export declare function isBookmarked(sessionId: string | undefined): boolean;
/**
 * Set (or clear) the bookmark mark on a session. Returns the resulting state, so
 * a caller can report it without a second read. A no-op write is skipped, which
 * keeps the file's mtime — and every other process's memoized read — untouched.
 */
export declare function setBookmark(sessionId: string, on: boolean): boolean;
/** Flip the mark; returns the new state (`true` = now bookmarked). */
export declare function toggleBookmark(sessionId: string): boolean;
