import { Subscription } from '@napplet/core'; /** * Napplet NAP keys shim entrypoint. * * @module */ /** * Handle keys.* messages from the shell via the central message listener. */ declare function handleKeysMessage(msg: { type: string; [key: string]: unknown; }): void; /** * Register a named action with the shell. * Returns the shell's assigned binding, if any. */ declare function registerAction(action: { id: string; label: string; defaultKey?: string; }): Promise<{ actionId: string; binding?: string; }>; /** * Unregister a previously registered action. * Fire-and-forget -- no response expected. */ declare function unregisterAction(actionId: string): void; /** * Register a local handler for a bound action. * Returns a Subscription with close() to unregister. */ declare function onAction(actionId: string, callback: () => void): Subscription; /** * Install the keys shim: capture-phase keydown listener for smart forwarding. * * @returns cleanup function that removes the listener */ declare function installKeysShim(): () => void; export { handleKeysMessage, installKeysShim, onAction, registerAction, unregisterAction };