/** * Whether Escape/q should leave the current pane and focus the chat composer. * Terminal keystrokes must never trigger this — Ghostty often focuses a * tabindexed container (not a textarea), so tagName checks alone are insufficient. */ export declare function shouldReturnFocusToInputOnKey(options: { key: string; isInInput: boolean; isInTerminal: boolean; currentFocus: string | null; }): boolean; interface UseKeyboardShortcutsOptions { sessionIds?: string[]; getSessionIds?: () => string[]; activeSessionId?: string; onSelectSession: (sessionId: string) => void; onNewSession: () => void; onStageFile?: (paths: string[]) => void; onUnstageFile?: (paths: string[]) => void; onRestoreFile?: (path: string) => void; onDeleteFile?: (path: string) => void; onStageAll?: () => void; onUnstageAll?: () => void; onOpenCommitModal?: () => void; onViewDiff?: (file: string, staged: boolean) => void; onReturnToInput?: () => void; } export declare function useKeyboardShortcuts({ sessionIds, getSessionIds, activeSessionId, onSelectSession, onNewSession, onStageFile, onUnstageFile, onRestoreFile, onDeleteFile, onStageAll, onUnstageAll, onOpenCommitModal, onViewDiff, onReturnToInput, }: UseKeyboardShortcutsOptions): { currentFocus: import("..").FocusArea; sessionIndex: number; gitFileIndex: number; }; export {}; //# sourceMappingURL=useKeyboardShortcuts.d.ts.map