import type { SessionsRegistry, ManagedSession } from "../core/types.js"; export interface SessionsSnapshot { registry: SessionsRegistry; selectedId?: string; preview: string; filter?: string; } export type SyncPiNameResult = { status: "synced"; name: string; } | { status: "unavailable"; } | { status: "unnamed"; }; export declare class SessionsController { private registry; private selectedId; private preview; private filter; constructor(registry?: SessionsRegistry); refresh(now?: number): Promise; refreshPreview(lines?: number): Promise; snapshot(): SessionsSnapshot; save(): Promise; move(delta: number): void; setFilter(filter: string | undefined): void; acknowledgeSelected(now?: number): Promise; moveSessionToGroup(id: string, group: string, now?: number): Promise; reorderSelected(delta: -1 | 1): Promise; renameSession(id: string, title: string, now?: number): Promise; syncPiName(id: string, now?: number): Promise; renameGroup(from: string, to: string): Promise; removeSession(id: string): void; selectSession(id: string): boolean; selected(): ManagedSession | undefined; }