/** * Runs the action registry for one workspace: builds what actions need, owns * the ⌘K menu and the shortcut sheet, listens for chords, keeps the recent * chats list, and hands the desktop shell its menu bar. */ import { type ReactNode } from "react"; import type { SessionListRow } from "../../../session-list-model.js"; import { type Chord } from "./chords.js"; import { type ActionEnv, type AppAction } from "./registry.js"; type ActionsContextValue = { env: ActionEnv; /** Run an action for a chat (row menus) or the current chat. */ run(action: AppAction, chat?: SessionListRow | null, chord?: Chord): void; /** The chords to show for an action on this surface and platform. */ chordsFor(action: AppAction): Chord[]; }; export declare function useAppActions(): ActionsContextValue | null; /** * An action's key for tooltips, labels and `aria-keyshortcuts`, in the * person's notation; nothing when this surface has no page-wide keys. */ export declare function useActionShortcut(actionId: string): { label: string; ariaKeys: string; chord: Chord; } | null; export declare function ActionsProvider(props: { children: ReactNode; }): import("react").JSX.Element; export {};