UNPKG

@rbxts/gamejoy

Version:

A simple class-based input library

9 lines (8 loc) 7.8 kB
/// <reference types="@rbxts/types" /> import { Union } from "../Actions"; declare type ModiferKey = "Shift" | "Alt" | "Meta" | "Control" | "Super"; /** * Returns an union of a modifier key that contains both left and right keys. */ export declare function ModifierKeys<M extends ModiferKey>(key: M): Union<Enum.KeyCode.Backspace | Enum.KeyCode.Tab | Enum.KeyCode.Clear | Enum.KeyCode.Return | Enum.KeyCode.Pause | Enum.KeyCode.Escape | Enum.KeyCode.Space | Enum.KeyCode.QuotedDouble | Enum.KeyCode.Hash | Enum.KeyCode.Dollar | Enum.KeyCode.Percent | Enum.KeyCode.Ampersand | Enum.KeyCode.Quote | Enum.KeyCode.LeftParenthesis | Enum.KeyCode.RightParenthesis | Enum.KeyCode.Asterisk | Enum.KeyCode.Plus | Enum.KeyCode.Comma | Enum.KeyCode.Minus | Enum.KeyCode.Period | Enum.KeyCode.Slash | Enum.KeyCode.Zero | Enum.KeyCode.One | Enum.KeyCode.Two | Enum.KeyCode.Three | Enum.KeyCode.Four | Enum.KeyCode.Five | Enum.KeyCode.Six | Enum.KeyCode.Seven | Enum.KeyCode.Eight | Enum.KeyCode.Nine | Enum.KeyCode.Colon | Enum.KeyCode.Semicolon | Enum.KeyCode.LessThan | Enum.KeyCode.Equals | Enum.KeyCode.GreaterThan | Enum.KeyCode.Question | Enum.KeyCode.At | Enum.KeyCode.LeftBracket | Enum.KeyCode.BackSlash | Enum.KeyCode.RightBracket | Enum.KeyCode.Caret | Enum.KeyCode.Underscore | Enum.KeyCode.Backquote | Enum.KeyCode.A | Enum.KeyCode.B | Enum.KeyCode.C | Enum.KeyCode.D | Enum.KeyCode.E | Enum.KeyCode.F | Enum.KeyCode.G | Enum.KeyCode.H | Enum.KeyCode.I | Enum.KeyCode.J | Enum.KeyCode.K | Enum.KeyCode.L | Enum.KeyCode.M | Enum.KeyCode.N | Enum.KeyCode.O | Enum.KeyCode.P | Enum.KeyCode.Q | Enum.KeyCode.R | Enum.KeyCode.S | Enum.KeyCode.T | Enum.KeyCode.U | Enum.KeyCode.V | Enum.KeyCode.W | Enum.KeyCode.X | Enum.KeyCode.Y | Enum.KeyCode.Z | Enum.KeyCode.LeftCurly | Enum.KeyCode.Pipe | Enum.KeyCode.RightCurly | Enum.KeyCode.Tilde | Enum.KeyCode.Delete | Enum.KeyCode.KeypadZero | Enum.KeyCode.KeypadOne | Enum.KeyCode.KeypadTwo | Enum.KeyCode.KeypadThree | Enum.KeyCode.KeypadFour | Enum.KeyCode.KeypadFive | Enum.KeyCode.KeypadSix | Enum.KeyCode.KeypadSeven | Enum.KeyCode.KeypadEight | Enum.KeyCode.KeypadNine | Enum.KeyCode.KeypadPeriod | Enum.KeyCode.KeypadDivide | Enum.KeyCode.KeypadMultiply | Enum.KeyCode.KeypadMinus | Enum.KeyCode.KeypadPlus | Enum.KeyCode.KeypadEnter | Enum.KeyCode.KeypadEquals | Enum.KeyCode.Up | Enum.KeyCode.Down | Enum.KeyCode.Right | Enum.KeyCode.Left | Enum.KeyCode.Insert | Enum.KeyCode.Home | Enum.KeyCode.End | Enum.KeyCode.PageUp | Enum.KeyCode.PageDown | Enum.KeyCode.LeftShift | Enum.KeyCode.RightShift | Enum.KeyCode.LeftMeta | Enum.KeyCode.RightMeta | Enum.KeyCode.LeftAlt | Enum.KeyCode.RightAlt | Enum.KeyCode.LeftControl | Enum.KeyCode.RightControl | Enum.KeyCode.CapsLock | Enum.KeyCode.NumLock | Enum.KeyCode.ScrollLock | Enum.KeyCode.LeftSuper | Enum.KeyCode.RightSuper | Enum.KeyCode.Mode | Enum.KeyCode.Compose | Enum.KeyCode.Help | Enum.KeyCode.Print | Enum.KeyCode.SysReq | Enum.KeyCode.Break | Enum.KeyCode.Menu | Enum.KeyCode.Power | Enum.KeyCode.Euro | Enum.KeyCode.Undo | Enum.KeyCode.F1 | Enum.KeyCode.F2 | Enum.KeyCode.F3 | Enum.KeyCode.F4 | Enum.KeyCode.F5 | Enum.KeyCode.F6 | Enum.KeyCode.F7 | Enum.KeyCode.F8 | Enum.KeyCode.F9 | Enum.KeyCode.F10 | Enum.KeyCode.F11 | Enum.KeyCode.F12 | Enum.KeyCode.F13 | Enum.KeyCode.F14 | Enum.KeyCode.F15 | Enum.KeyCode.ButtonX | Enum.KeyCode.ButtonY | Enum.KeyCode.ButtonA | Enum.KeyCode.ButtonB | Enum.KeyCode.ButtonR1 | Enum.KeyCode.ButtonL1 | Enum.KeyCode.ButtonR2 | Enum.KeyCode.ButtonL2 | Enum.KeyCode.ButtonR3 | Enum.KeyCode.ButtonL3 | Enum.KeyCode.ButtonStart | Enum.KeyCode.ButtonSelect | Enum.KeyCode.DPadLeft | Enum.KeyCode.DPadRight | Enum.KeyCode.DPadUp | Enum.KeyCode.DPadDown | Enum.KeyCode.Thumbstick1 | Enum.KeyCode.Thumbstick2 | Enum.UserInputType.MouseButton1 | Enum.UserInputType.MouseButton2 | Enum.UserInputType.MouseButton3 | Enum.UserInputType.MouseWheel | Enum.UserInputType.MouseMovement | Enum.UserInputType.Touch | Enum.UserInputType.Keyboard | Enum.UserInputType.Focus | Enum.UserInputType.Accelerometer | Enum.UserInputType.Gyro | Enum.UserInputType.Gamepad1 | Enum.UserInputType.Gamepad2 | Enum.UserInputType.Gamepad3 | Enum.UserInputType.Gamepad4 | Enum.UserInputType.Gamepad5 | Enum.UserInputType.Gamepad6 | Enum.UserInputType.Gamepad7 | Enum.UserInputType.Gamepad8 | Enum.UserInputType.TextInput | Enum.UserInputType.InputMethod | Enum.UserInputType.None | "Backspace" | "Tab" | "Clear" | "Return" | "Pause" | "Escape" | "Space" | "QuotedDouble" | "Hash" | "Dollar" | "Percent" | "Ampersand" | "Quote" | "LeftParenthesis" | "RightParenthesis" | "Asterisk" | "Plus" | "Comma" | "Minus" | "Period" | "Slash" | "Zero" | "One" | "Two" | "Three" | "Four" | "Five" | "Six" | "Seven" | "Eight" | "Nine" | "Colon" | "Semicolon" | "LessThan" | "Equals" | "GreaterThan" | "Question" | "At" | "LeftBracket" | "BackSlash" | "RightBracket" | "Caret" | "Underscore" | "Backquote" | "A" | "B" | "C" | "D" | "E" | "F" | "G" | "H" | "I" | "J" | "K" | "L" | "M" | "N" | "O" | "P" | "Q" | "R" | "S" | "T" | "U" | "V" | "W" | "X" | "Y" | "Z" | "LeftCurly" | "Pipe" | "RightCurly" | "Tilde" | "Delete" | "KeypadZero" | "KeypadOne" | "KeypadTwo" | "KeypadThree" | "KeypadFour" | "KeypadFive" | "KeypadSix" | "KeypadSeven" | "KeypadEight" | "KeypadNine" | "KeypadPeriod" | "KeypadDivide" | "KeypadMultiply" | "KeypadMinus" | "KeypadPlus" | "KeypadEnter" | "KeypadEquals" | "Up" | "Down" | "Right" | "Left" | "Insert" | "Home" | "End" | "PageUp" | "PageDown" | "LeftShift" | "RightShift" | "LeftMeta" | "RightMeta" | "LeftAlt" | "RightAlt" | "LeftControl" | "RightControl" | "CapsLock" | "NumLock" | "ScrollLock" | "LeftSuper" | "RightSuper" | "Mode" | "Compose" | "Help" | "Print" | "SysReq" | "Break" | "Menu" | "Power" | "Euro" | "Undo" | "F1" | "F2" | "F3" | "F4" | "F5" | "F6" | "F7" | "F8" | "F9" | "F10" | "F11" | "F12" | "F13" | "F14" | "F15" | "ButtonX" | "ButtonY" | "ButtonA" | "ButtonB" | "ButtonR1" | "ButtonL1" | "ButtonR2" | "ButtonL2" | "ButtonR3" | "ButtonL3" | "ButtonStart" | "ButtonSelect" | "DPadLeft" | "DPadRight" | "DPadUp" | "DPadDown" | "Thumbstick1" | "Thumbstick2" | 8 | 9 | 12 | 13 | 19 | 27 | 32 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 256 | 257 | 258 | 259 | 260 | 261 | 262 | 263 | 264 | 265 | 266 | 267 | 268 | 269 | 270 | 271 | 272 | 273 | 274 | 275 | 276 | 277 | 278 | 279 | 280 | 281 | 304 | 303 | 310 | 309 | 308 | 307 | 306 | 305 | 301 | 300 | 302 | 311 | 312 | 313 | 314 | 315 | 316 | 317 | 318 | 319 | 320 | 321 | 322 | 282 | 283 | 284 | 285 | 286 | 287 | 288 | 289 | 290 | 291 | 292 | 293 | 294 | 295 | 296 | 1000 | 1001 | 1002 | 1003 | 1004 | 1005 | 1006 | 1007 | 1008 | 1009 | 1010 | 1011 | 1012 | 1013 | 1014 | 1015 | 1016 | 1017 | "MouseButton1" | "MouseButton2" | 1 | "MouseButton3" | 2 | "MouseWheel" | 3 | "MouseMovement" | 4 | "Touch" | 7 | "Keyboard" | "Focus" | "Accelerometer" | 10 | "Gyro" | 11 | "Gamepad1" | "Gamepad2" | "Gamepad3" | 14 | "Gamepad4" | 15 | "Gamepad5" | 16 | "Gamepad6" | 17 | "Gamepad7" | 18 | "Gamepad8" | "TextInput" | 20 | "InputMethod" | 21 | "None" | 22 | "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" | "a" | "b" | "c" | "d" | "e" | "f" | "g" | "h" | "i" | "j" | "k" | "l" | "m" | "n" | "o" | "p" | "q" | "r" | "s" | "t" | "u" | "v" | "w" | "x" | "y" | "z" | "Numpad0" | "Numpad1" | "Numpad2" | "Numpad3" | "Numpad4" | "Numpad5" | "Numpad6" | "Numpad7" | "Numpad8" | "Numpad9" | "L1" | "R1" | "L2" | "R2" | "L3" | "R3" | "LeftCtrl" | "RightCtrl">; export {};