/**
 * Utilities for formatting keybinding hints in the UI.
 */
import { type Keybinding } from "@oh-my-pi/pi-tui";
import type { AppKeybinding, KeybindingsManager } from "../../config/keybindings.js";
/**
 * Get display string for an editor action.
 */
export declare function editorKey(action: Keybinding): string;
/**
 * Get display string for an app action.
 */
export declare function appKey(keybindings: KeybindingsManager, action: AppKeybinding): string;
/**
 * Format a keybinding hint with consistent styling: dim key, muted description.
 * Looks up the key from editor keybindings automatically.
 *
 * @param action - Keybinding action name (e.g., "tui.select.confirm", "app.tools.expand")
 * @param description - Description text (e.g., "to expand", "cancel")
 * @returns Formatted string with dim key and muted description
 */
export declare function keyHint(action: Keybinding, description: string): string;
/**
 * Format a keybinding hint for app-level actions.
 * Requires the KeybindingsManager instance.
 *
 * @param keybindings - KeybindingsManager instance
 * @param action - App keybinding name (e.g., "app.interrupt", "app.editor.external")
 * @param description - Description text
 * @returns Formatted string with dim key and muted description
 */
export declare function appKeyHint(keybindings: KeybindingsManager, action: AppKeybinding, description: string): string;
/**
 * Format a raw key string with description (for non-configurable keys like ↑↓).
 *
 * @param key - Raw key string
 * @param description - Description text
 * @returns Formatted string with dim key and muted description
 */
export declare function rawKeyHint(key: string, description: string): string;
