polyv-live-cli
Version:
CLI tool for managing PolyV live streaming services.
32 lines • 1.31 kB
TypeScript
import { KeyboardEvent, ShortcutConfig } from '../types/interaction';
export declare class KeyboardHandler {
private shortcuts;
private keySequences;
private currentSequence;
private sequenceTimeout?;
private readonly SEQUENCE_TIMEOUT_MS;
static normalizeKeyEvent(rawKey: any, rawCh?: any): KeyboardEvent;
static buildShortcutKey(event: KeyboardEvent): string;
static parseShortcutKey(shortcut: string): {
ctrl: boolean;
alt: boolean;
shift: boolean;
meta: boolean;
key: string;
};
static matchesShortcut(event: KeyboardEvent, shortcut: string): boolean;
registerShortcut(config: ShortcutConfig): void;
unregisterShortcut(key: string): void;
findMatchingShortcut(event: KeyboardEvent): ShortcutConfig | undefined;
registerKeySequence(sequence: string[], action: string): void;
private checkSequenceMatch;
static isNavigationKey(key: string): boolean;
static isFunctionKey(key: string): boolean;
static isPrintableKey(event: KeyboardEvent): boolean;
static getKeyDescription(event: KeyboardEvent): string;
getShortcuts(): ShortcutConfig[];
getShortcutsByContext(context: string): ShortcutConfig[];
clear(): void;
destroy(): void;
}
//# sourceMappingURL=keyboard-handler.d.ts.map