// Source: ~/claudecode/openclaudecode/src/hooks/useExitOnCtrlCDWithKeybindings.ts
use crate;
pub use crateExitState as ExitStateType;
/// Convenience function that wires up `ExitOnCtrlCD` with keybindings.
///
/// This is the standard way to use `useExitOnCtrlCD` in components.
/// The separation exists to avoid import cycles -- `useExitOnCtrlCD`
/// doesn't import from the keybindings module directly.
///
/// Translation of the React `useExitOnCtrlCDWithKeybindings` hook.
/// In Rust this is a plain constructor function.
///
/// - `exit_fn`: the function to call on exit
/// - `on_exit`: optional custom exit handler
/// - `on_interrupt`: optional callback for features to handle interrupt (ctrl+c).
/// Return true if handled, false to fall through to double-press exit.
/// - `is_active`: whether the keybinding is active