index.d.ts 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  1. export = keycode;
  2. export as namespace keycode;
  3. declare const keycode: Keycode;
  4. declare interface CodesMap {
  5. 'backspace': number;
  6. 'tab': number;
  7. 'enter': number;
  8. 'shift': number;
  9. 'ctrl': number;
  10. 'alt': number;
  11. 'pause/break': number;
  12. 'caps lock': number;
  13. 'esc': number;
  14. 'space': number;
  15. 'page up': number;
  16. 'page down': number;
  17. 'end': number;
  18. 'home': number;
  19. 'left': number;
  20. 'up': number;
  21. 'right': number;
  22. 'down': number;
  23. 'insert': number;
  24. 'delete': number;
  25. 'command': number;
  26. 'left command': number;
  27. 'right command': number;
  28. 'numpad *': number;
  29. 'numpad +': number;
  30. 'numpad -': number;
  31. 'numpad .': number;
  32. 'numpad /': number;
  33. 'num lock': number;
  34. 'scroll lock': number;
  35. 'my computer': number;
  36. 'my calculator': number;
  37. ';': number;
  38. '=': number;
  39. ',': number;
  40. '-': number;
  41. '.': number;
  42. '/': number;
  43. '`': number;
  44. '[': number;
  45. '\\': number;
  46. ']': number;
  47. "'": number;
  48. 'a': number;
  49. 'b': number;
  50. 'c': number;
  51. 'd': number;
  52. 'e': number;
  53. 'f': number;
  54. 'g': number;
  55. 'h': number;
  56. 'i': number;
  57. 'j': number;
  58. 'k': number;
  59. 'l': number;
  60. 'm': number;
  61. 'n': number;
  62. 'o': number;
  63. 'p': number;
  64. 'q': number;
  65. 'r': number;
  66. 's': number;
  67. 't': number;
  68. 'u': number;
  69. 'v': number;
  70. 'w': number;
  71. 'x': number;
  72. 'y': number;
  73. 'z': number;
  74. '0': number;
  75. '1': number;
  76. '2': number;
  77. '3': number;
  78. '4': number;
  79. '5': number;
  80. '6': number;
  81. '7': number;
  82. '8': number;
  83. '9': number;
  84. 'f1': number;
  85. 'f2': number;
  86. 'f3': number;
  87. 'f4': number;
  88. 'f5': number;
  89. 'f6': number;
  90. 'f7': number;
  91. 'f8': number;
  92. 'f9': number;
  93. 'f10': number;
  94. 'f11': number;
  95. 'f12': number;
  96. 'numpad 0': number;
  97. 'numpad 1': number;
  98. 'numpad 2': number;
  99. 'numpad 3': number;
  100. 'numpad 4': number;
  101. 'numpad 5': number;
  102. 'numpad 6': number;
  103. 'numpad 7': number;
  104. 'numpad 8': number;
  105. 'numpad 9': number;
  106. }
  107. declare interface AliasesMap {
  108. 'windows': number;
  109. '⇧': number;
  110. '⌥': number;
  111. '⌃': number;
  112. '⌘': number;
  113. 'ctl': number;
  114. 'control': number;
  115. 'option': number;
  116. 'pause': number;
  117. 'break': number;
  118. 'caps': number;
  119. 'return': number;
  120. 'escape': number;
  121. 'spc': number;
  122. 'spacebar': number;
  123. 'pgup': number;
  124. 'pgdn': number;
  125. 'ins': number;
  126. 'del': number;
  127. 'cmd': number;
  128. }
  129. declare interface InverseCodesMap {
  130. [key: number]: string;
  131. }
  132. declare interface Keycode {
  133. (event: Event): string;
  134. (keycode: number): string;
  135. (name: string): number;
  136. codes: CodesMap;
  137. aliases: AliasesMap;
  138. names: InverseCodesMap;
  139. isEventKey: (event: Event, nameOrCode: number | string) => boolean;
  140. }