/**
 * Canonical shortcut definitions for the workflow canvas editor.
 *
 * Single source of truth for all keyboard shortcuts — consumed by
 * {@link useCanvasKeyboardShortcuts} (matching), {@link CanvasContextMenu}
 * (hint labels), {@link NodeActions} (toolbar tooltips), and any future
 * help dialog or documentation generator.
 *
 * Pure TypeScript — no React dependency. Safe to import from any layer.
 *
 * @since T11 (Context Menus and Keyboard Shortcuts)
 */
/**
 * Where a shortcut is applicable.
 *
 * - `node` — single node selected
 * - `edge` — single edge selected
 * - `selection` — one or more nodes selected (multi-select)
 * - `canvas` — no selection required, fires on the canvas
 */
export type ShortcutScope = "node" | "edge" | "selection" | "canvas";
/** A single keyboard shortcut definition. */
export interface ShortcutDefinition {
    /** Stable identifier (e.g. `"duplicate"`, `"copy"`). */
    readonly id: string;
    /** Human-readable action label for menus and tooltips. */
    readonly label: string;
    /**
     * Key chord in platform-agnostic notation.
     *
     * `Mod` resolves to `Cmd` on macOS, `Ctrl` elsewhere.
     * Bare keys use their literal name (e.g. `"N"`, `"Escape"`).
     */
    readonly keys: string;
    /** Platform-specific display string (e.g. `"⌘D"` or `"Ctrl+D"`). */
    readonly hint: string;
    /** Where this shortcut is active. */
    readonly scope: ShortcutScope;
    /** Whether the shortcut is restricted to design mode. */
    readonly requiresDesignMode: boolean;
}
/** All registered shortcut definitions. */
export declare function getAllShortcuts(): readonly ShortcutDefinition[];
/**
 * Look up a shortcut by its stable identifier.
 *
 * Returns `undefined` if the id is not registered — callers should
 * treat this as a programming error (missing registry entry).
 */
export declare function getShortcut(id: string): ShortcutDefinition | undefined;
/**
 * Get the display hint for a shortcut, or an empty string if not found.
 *
 * Convenience wrapper for context menu and toolbar hint labels.
 */
export declare function getShortcutHint(id: string): string;
/** Whether the runtime platform is macOS / iOS. */
export declare function isMacPlatform(): boolean;
//# sourceMappingURL=shortcut-registry.d.ts.map