import { useKeybindings } from '../keybindings/useKeybinding.js' import { type ExitState, useExitOnCtrlCD } from './useExitOnCtrlCD.js' export type { ExitState } /** * Convenience hook that wires up useExitOnCtrlCD with useKeybindings. * * This is the standard way to use useExitOnCtrlCD in components. * The separation exists to avoid import cycles - useExitOnCtrlCD.ts * doesn't import from the keybindings module directly. * * @param onExit - Optional custom exit handler * @param onInterrupt - Optional callback for features to handle interrupt (ctrl+c). * Return true if handled, false to fall through to double-press exit. * @param isActive - Whether the keybinding is active (default true). */ export function useExitOnCtrlCDWithKeybindings( onExit?: () => void, onInterrupt?: () => boolean, isActive?: boolean, ): ExitState { return useExitOnCtrlCD(useKeybindings, onInterrupt, onExit, isActive) }