import type { ReactiveController, ReactiveControllerHost } from 'lit'; type SpatialKeyHost = ReactiveControllerHost & HTMLElement; export type SpatialKeyHandling = 'handled' | 'ignored'; export interface KeyNavigationSpatialControllerOptions { readonly isEnabled?: () => boolean; } export type SpatialKeyCommand = { readonly ctrlKey: boolean; readonly event: KeyboardEvent; readonly kind: 'direction'; readonly horizontal: -1 | 0 | 1; readonly key: 'ArrowDown' | 'ArrowLeft' | 'ArrowRight' | 'ArrowUp'; readonly shiftKey: boolean; readonly vertical: -1 | 0 | 1; } | { readonly event: KeyboardEvent; readonly kind: 'zoom'; readonly key: '+' | '-' | '='; }; /** Converts direct-host keyboard input into spatial direction and zoom commands. */ export declare class KeyNavigationSpatialController implements ReactiveController { #private; constructor(host: SpatialKeyHost, { isEnabled }?: KeyNavigationSpatialControllerOptions); hostConnected(): void; hostDisconnected(): void; } export {};