import type { TUI } from '@earendil-works/pi-tui'; import type { ChatLog } from './components/chat-log.js'; import type { TuiBackend } from './tui-backend.js'; import type { TuiState } from './tui-types.js'; import type { TuiSessionSnapshot } from './tui-session-snapshot.js'; export type SessionActionsContext = { client: TuiBackend; chatLog: ChatLog; tui: TUI; state: TuiState; resolveSessionKey: (raw?: string) => string; updateHeader: () => void; updateFooter: () => void; setActivityStatus: (status: string) => void; historyLimit?: number; onAgentIdChange?: (agentId: string) => void; sessionSnapshot?: TuiSessionSnapshot; }; export declare function createSessionActions(context: SessionActionsContext): { refreshSessionInfo: () => Promise; loadHistory: (opts?: { merge?: boolean; }) => Promise; loadHistoryWindow: (opts: { rowNumber: number; before?: number; after?: number; }) => Promise; setSession: (rawKey: string) => Promise; abortActive: (opts?: { clearUi?: boolean; }) => Promise; resetCurrentSession: () => Promise; clearChatForSessionSwitch: () => void; };