true, default => false }; } /** * Check if this is an action key */ public function isActionKey(): bool { return match($this) { self::ENTER, self::SPACE, self::BACKSPACE, self::ESCAPE => true, default => false }; } /** * Get human-readable description */ public function getDescription(): string { return match($this) { self::ARROW_UP => 'Arrow Up', self::ARROW_DOWN => 'Arrow Down', self::ARROW_LEFT => 'Arrow Left', self::ARROW_RIGHT => 'Arrow Right', self::ENTER => 'Enter', self::SPACE => 'Space', self::BACKSPACE => 'Backspace', self::ESCAPE => 'Escape', self::TAB => 'Tab', self::DELETE => 'Delete', self::HOME => 'Home', self::END => 'End', self::PAGE_UP => 'Page Up', self::PAGE_DOWN => 'Page Down', self::F1 => 'F1', }; } }