/**
 * Keyboard-shortcut parsing and matching for `ui.commands.register({
 * shortcut })`. Shortcut strings follow the ProseMirror / Tiptap
 * convention so consumers don't have to relearn:
 *
 *   `Mod-K`           Cmd+K on macOS, Ctrl+K elsewhere
 *   `Mod-Shift-C`     Cmd+Shift+C / Ctrl+Shift+C
 *   `Alt-Enter`       Alt+Enter
 *   `Mod-Alt-1`       Cmd+Option+1 / Ctrl+Alt+1
 *
 * Modifier order in the input string doesn't matter; everything is
 * normalized to canonical `Mod, Alt, Shift, KEY` order so registry
 * lookups by event key and by registered string land in the same
 * bucket.
 */
/**
 * Normalize a shortcut string to canonical form. Returns `null` for
 * malformed inputs (empty, missing key, only modifiers, unknown
 * modifier names).
 */
export declare function normalizeShortcut(input: string): string | null;
/**
 * Build the canonical shortcut string for a `KeyboardEvent`. Treats
 * Cmd (macOS) and Ctrl (other platforms) as the same `Mod` so
 * consumers can register one string per shortcut and have it match
 * either platform's combo. Returns `null` for events whose `key` is
 * itself a modifier (the user is still composing the chord).
 */
export declare function shortcutFromEvent(event: KeyboardEvent): string | null;
//# sourceMappingURL=keyboard-shortcuts.d.ts.map