@openmouse/protocol 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (547) hide show
  1. package/CONTRIBUTING.md +167 -0
  2. package/README.md +89 -0
  3. package/dist/asus/index.d.ts +52 -0
  4. package/dist/asus/index.d.ts.map +1 -0
  5. package/dist/asus/index.js +248 -0
  6. package/dist/asus/index.js.map +1 -0
  7. package/dist/atk/index.d.ts +200 -0
  8. package/dist/atk/index.d.ts.map +1 -0
  9. package/dist/atk/index.js +480 -0
  10. package/dist/atk/index.js.map +1 -0
  11. package/dist/bitmouse/index.d.ts +284 -0
  12. package/dist/bitmouse/index.d.ts.map +1 -0
  13. package/dist/bitmouse/index.js +396 -0
  14. package/dist/bitmouse/index.js.map +1 -0
  15. package/dist/compx/codec.d.ts +31 -0
  16. package/dist/compx/codec.d.ts.map +1 -0
  17. package/dist/compx/codec.js +50 -0
  18. package/dist/compx/codec.js.map +1 -0
  19. package/dist/corsair/index.d.ts +147 -0
  20. package/dist/corsair/index.d.ts.map +1 -0
  21. package/dist/corsair/index.js +223 -0
  22. package/dist/corsair/index.js.map +1 -0
  23. package/dist/dareu/index.d.ts +136 -0
  24. package/dist/dareu/index.d.ts.map +1 -0
  25. package/dist/dareu/index.js +344 -0
  26. package/dist/dareu/index.js.map +1 -0
  27. package/dist/drivers/asus/hid.d.ts +29 -0
  28. package/dist/drivers/asus/hid.d.ts.map +1 -0
  29. package/dist/drivers/asus/hid.js +419 -0
  30. package/dist/drivers/asus/hid.js.map +1 -0
  31. package/dist/drivers/atk/bitmouse-hid.d.ts +80 -0
  32. package/dist/drivers/atk/bitmouse-hid.d.ts.map +1 -0
  33. package/dist/drivers/atk/bitmouse-hid.js +501 -0
  34. package/dist/drivers/atk/bitmouse-hid.js.map +1 -0
  35. package/dist/drivers/atk/hid.d.ts +163 -0
  36. package/dist/drivers/atk/hid.d.ts.map +1 -0
  37. package/dist/drivers/atk/hid.js +1368 -0
  38. package/dist/drivers/atk/hid.js.map +1 -0
  39. package/dist/drivers/atk/products.d.ts +13 -0
  40. package/dist/drivers/atk/products.d.ts.map +1 -0
  41. package/dist/drivers/atk/products.js +13 -0
  42. package/dist/drivers/atk/products.js.map +1 -0
  43. package/dist/drivers/attackshark/dpi.d.ts +41 -0
  44. package/dist/drivers/attackshark/dpi.d.ts.map +1 -0
  45. package/dist/drivers/attackshark/dpi.js +215 -0
  46. package/dist/drivers/attackshark/dpi.js.map +1 -0
  47. package/dist/drivers/attackshark/hid.d.ts +124 -0
  48. package/dist/drivers/attackshark/hid.d.ts.map +1 -0
  49. package/dist/drivers/attackshark/hid.js +728 -0
  50. package/dist/drivers/attackshark/hid.js.map +1 -0
  51. package/dist/drivers/corsair/hid.d.ts +70 -0
  52. package/dist/drivers/corsair/hid.d.ts.map +1 -0
  53. package/dist/drivers/corsair/hid.js +414 -0
  54. package/dist/drivers/corsair/hid.js.map +1 -0
  55. package/dist/drivers/dareu/hid.d.ts +59 -0
  56. package/dist/drivers/dareu/hid.d.ts.map +1 -0
  57. package/dist/drivers/dareu/hid.js +478 -0
  58. package/dist/drivers/dareu/hid.js.map +1 -0
  59. package/dist/drivers/endgame/egg-op1-hid.d.ts +107 -0
  60. package/dist/drivers/endgame/egg-op1-hid.d.ts.map +1 -0
  61. package/dist/drivers/endgame/egg-op1-hid.js +605 -0
  62. package/dist/drivers/endgame/egg-op1-hid.js.map +1 -0
  63. package/dist/drivers/endgame/egg-we-control.d.ts +42 -0
  64. package/dist/drivers/endgame/egg-we-control.d.ts.map +1 -0
  65. package/dist/drivers/endgame/egg-we-control.js +87 -0
  66. package/dist/drivers/endgame/egg-we-control.js.map +1 -0
  67. package/dist/drivers/endgame/egg-we-hid.d.ts +58 -0
  68. package/dist/drivers/endgame/egg-we-hid.d.ts.map +1 -0
  69. package/dist/drivers/endgame/egg-we-hid.js +514 -0
  70. package/dist/drivers/endgame/egg-we-hid.js.map +1 -0
  71. package/dist/drivers/fantech/hid.d.ts +106 -0
  72. package/dist/drivers/fantech/hid.d.ts.map +1 -0
  73. package/dist/drivers/fantech/hid.js +295 -0
  74. package/dist/drivers/fantech/hid.js.map +1 -0
  75. package/dist/drivers/finalmouse/hid.d.ts +31 -0
  76. package/dist/drivers/finalmouse/hid.d.ts.map +1 -0
  77. package/dist/drivers/finalmouse/hid.js +181 -0
  78. package/dist/drivers/finalmouse/hid.js.map +1 -0
  79. package/dist/drivers/gearhub/hid.d.ts +191 -0
  80. package/dist/drivers/gearhub/hid.d.ts.map +1 -0
  81. package/dist/drivers/gearhub/hid.js +542 -0
  82. package/dist/drivers/gearhub/hid.js.map +1 -0
  83. package/dist/drivers/glorious/classic-hid.d.ts +62 -0
  84. package/dist/drivers/glorious/classic-hid.d.ts.map +1 -0
  85. package/dist/drivers/glorious/classic-hid.js +326 -0
  86. package/dist/drivers/glorious/classic-hid.js.map +1 -0
  87. package/dist/drivers/glorious/hid.d.ts +39 -0
  88. package/dist/drivers/glorious/hid.d.ts.map +1 -0
  89. package/dist/drivers/glorious/hid.js +203 -0
  90. package/dist/drivers/glorious/hid.js.map +1 -0
  91. package/dist/drivers/gwolves/hid.d.ts +27 -0
  92. package/dist/drivers/gwolves/hid.d.ts.map +1 -0
  93. package/dist/drivers/gwolves/hid.js +225 -0
  94. package/dist/drivers/gwolves/hid.js.map +1 -0
  95. package/dist/drivers/gwolves/products.d.ts +17 -0
  96. package/dist/drivers/gwolves/products.d.ts.map +1 -0
  97. package/dist/drivers/gwolves/products.js +58 -0
  98. package/dist/drivers/gwolves/products.js.map +1 -0
  99. package/dist/drivers/hyperx/hid.d.ts +59 -0
  100. package/dist/drivers/hyperx/hid.d.ts.map +1 -0
  101. package/dist/drivers/hyperx/hid.js +229 -0
  102. package/dist/drivers/hyperx/hid.js.map +1 -0
  103. package/dist/drivers/incott/hid.d.ts +513 -0
  104. package/dist/drivers/incott/hid.d.ts.map +1 -0
  105. package/dist/drivers/incott/hid.js +1173 -0
  106. package/dist/drivers/incott/hid.js.map +1 -0
  107. package/dist/drivers/index.d.ts +5 -0
  108. package/dist/drivers/index.d.ts.map +1 -0
  109. package/dist/drivers/index.js +5 -0
  110. package/dist/drivers/index.js.map +1 -0
  111. package/dist/drivers/keychron/m6-hid.d.ts +81 -0
  112. package/dist/drivers/keychron/m6-hid.d.ts.map +1 -0
  113. package/dist/drivers/keychron/m6-hid.js +486 -0
  114. package/dist/drivers/keychron/m6-hid.js.map +1 -0
  115. package/dist/drivers/keychron/nape-hid.d.ts +60 -0
  116. package/dist/drivers/keychron/nape-hid.d.ts.map +1 -0
  117. package/dist/drivers/keychron/nape-hid.js +432 -0
  118. package/dist/drivers/keychron/nape-hid.js.map +1 -0
  119. package/dist/drivers/ksnake/hid.d.ts +74 -0
  120. package/dist/drivers/ksnake/hid.d.ts.map +1 -0
  121. package/dist/drivers/ksnake/hid.js +368 -0
  122. package/dist/drivers/ksnake/hid.js.map +1 -0
  123. package/dist/drivers/lamzu/hid.d.ts +58 -0
  124. package/dist/drivers/lamzu/hid.d.ts.map +1 -0
  125. package/dist/drivers/lamzu/hid.js +414 -0
  126. package/dist/drivers/lamzu/hid.js.map +1 -0
  127. package/dist/drivers/lamzu-atlantis/hid.d.ts +148 -0
  128. package/dist/drivers/lamzu-atlantis/hid.d.ts.map +1 -0
  129. package/dist/drivers/lamzu-atlantis/hid.js +587 -0
  130. package/dist/drivers/lamzu-atlantis/hid.js.map +1 -0
  131. package/dist/drivers/logitech/bolt.d.ts +41 -0
  132. package/dist/drivers/logitech/bolt.d.ts.map +1 -0
  133. package/dist/drivers/logitech/bolt.js +105 -0
  134. package/dist/drivers/logitech/bolt.js.map +1 -0
  135. package/dist/drivers/logitech/hidpp.d.ts +525 -0
  136. package/dist/drivers/logitech/hidpp.d.ts.map +1 -0
  137. package/dist/drivers/logitech/hidpp.js +2774 -0
  138. package/dist/drivers/logitech/hidpp.js.map +1 -0
  139. package/dist/drivers/logitech/mode-status.d.ts +53 -0
  140. package/dist/drivers/logitech/mode-status.d.ts.map +1 -0
  141. package/dist/drivers/logitech/mode-status.js +52 -0
  142. package/dist/drivers/logitech/mode-status.js.map +1 -0
  143. package/dist/drivers/logitech/onboard-profiles.d.ts +298 -0
  144. package/dist/drivers/logitech/onboard-profiles.d.ts.map +1 -0
  145. package/dist/drivers/logitech/onboard-profiles.js +965 -0
  146. package/dist/drivers/logitech/onboard-profiles.js.map +1 -0
  147. package/dist/drivers/logitech/rgb-effects.d.ts +20 -0
  148. package/dist/drivers/logitech/rgb-effects.d.ts.map +1 -0
  149. package/dist/drivers/logitech/rgb-effects.js +93 -0
  150. package/dist/drivers/logitech/rgb-effects.js.map +1 -0
  151. package/dist/drivers/mchose/a5-gen1-hid.d.ts +36 -0
  152. package/dist/drivers/mchose/a5-gen1-hid.d.ts.map +1 -0
  153. package/dist/drivers/mchose/a5-gen1-hid.js +219 -0
  154. package/dist/drivers/mchose/a5-gen1-hid.js.map +1 -0
  155. package/dist/drivers/mchose/dock-hid.d.ts +26 -0
  156. package/dist/drivers/mchose/dock-hid.d.ts.map +1 -0
  157. package/dist/drivers/mchose/dock-hid.js +176 -0
  158. package/dist/drivers/mchose/dock-hid.js.map +1 -0
  159. package/dist/drivers/mchose/hid.d.ts +118 -0
  160. package/dist/drivers/mchose/hid.d.ts.map +1 -0
  161. package/dist/drivers/mchose/hid.js +550 -0
  162. package/dist/drivers/mchose/hid.js.map +1 -0
  163. package/dist/drivers/mchose/v3-hid.d.ts +109 -0
  164. package/dist/drivers/mchose/v3-hid.d.ts.map +1 -0
  165. package/dist/drivers/mchose/v3-hid.js +572 -0
  166. package/dist/drivers/mchose/v3-hid.js.map +1 -0
  167. package/dist/drivers/microsoft/hid.d.ts +25 -0
  168. package/dist/drivers/microsoft/hid.d.ts.map +1 -0
  169. package/dist/drivers/microsoft/hid.js +247 -0
  170. package/dist/drivers/microsoft/hid.js.map +1 -0
  171. package/dist/drivers/moddo/hid.d.ts +31 -0
  172. package/dist/drivers/moddo/hid.d.ts.map +1 -0
  173. package/dist/drivers/moddo/hid.js +154 -0
  174. package/dist/drivers/moddo/hid.js.map +1 -0
  175. package/dist/drivers/mouse-types.d.ts +388 -0
  176. package/dist/drivers/mouse-types.d.ts.map +1 -0
  177. package/dist/drivers/mouse-types.js +2 -0
  178. package/dist/drivers/mouse-types.js.map +1 -0
  179. package/dist/drivers/ninjutso/hid.d.ts +62 -0
  180. package/dist/drivers/ninjutso/hid.d.ts.map +1 -0
  181. package/dist/drivers/ninjutso/hid.js +680 -0
  182. package/dist/drivers/ninjutso/hid.js.map +1 -0
  183. package/dist/drivers/orbital/hid.d.ts +24 -0
  184. package/dist/drivers/orbital/hid.d.ts.map +1 -0
  185. package/dist/drivers/orbital/hid.js +85 -0
  186. package/dist/drivers/orbital/hid.js.map +1 -0
  187. package/dist/drivers/orbital/host-protocol.d.ts +59 -0
  188. package/dist/drivers/orbital/host-protocol.d.ts.map +1 -0
  189. package/dist/drivers/orbital/host-protocol.js +884 -0
  190. package/dist/drivers/orbital/host-protocol.js.map +1 -0
  191. package/dist/drivers/pulsar/pulsar-hid.d.ts +63 -0
  192. package/dist/drivers/pulsar/pulsar-hid.d.ts.map +1 -0
  193. package/dist/drivers/pulsar/pulsar-hid.js +381 -0
  194. package/dist/drivers/pulsar/pulsar-hid.js.map +1 -0
  195. package/dist/drivers/pulsar/pulsar-pro-hid.d.ts +46 -0
  196. package/dist/drivers/pulsar/pulsar-pro-hid.d.ts.map +1 -0
  197. package/dist/drivers/pulsar/pulsar-pro-hid.js +343 -0
  198. package/dist/drivers/pulsar/pulsar-pro-hid.js.map +1 -0
  199. package/dist/drivers/pulsar/pulsar-xs1-hid.d.ts +40 -0
  200. package/dist/drivers/pulsar/pulsar-xs1-hid.d.ts.map +1 -0
  201. package/dist/drivers/pulsar/pulsar-xs1-hid.js +251 -0
  202. package/dist/drivers/pulsar/pulsar-xs1-hid.js.map +1 -0
  203. package/dist/drivers/rawm/hid.d.ts +29 -0
  204. package/dist/drivers/rawm/hid.d.ts.map +1 -0
  205. package/dist/drivers/rawm/hid.js +210 -0
  206. package/dist/drivers/rawm/hid.js.map +1 -0
  207. package/dist/drivers/razer/cobra-hid.d.ts +63 -0
  208. package/dist/drivers/razer/cobra-hid.d.ts.map +1 -0
  209. package/dist/drivers/razer/cobra-hid.js +282 -0
  210. package/dist/drivers/razer/cobra-hid.js.map +1 -0
  211. package/dist/drivers/razer/hid-open.d.ts +13 -0
  212. package/dist/drivers/razer/hid-open.d.ts.map +1 -0
  213. package/dist/drivers/razer/hid-open.js +29 -0
  214. package/dist/drivers/razer/hid-open.js.map +1 -0
  215. package/dist/drivers/razer/hid.d.ts +231 -0
  216. package/dist/drivers/razer/hid.d.ts.map +1 -0
  217. package/dist/drivers/razer/hid.js +772 -0
  218. package/dist/drivers/razer/hid.js.map +1 -0
  219. package/dist/drivers/razer/viper-hid.d.ts +33 -0
  220. package/dist/drivers/razer/viper-hid.d.ts.map +1 -0
  221. package/dist/drivers/razer/viper-hid.js +177 -0
  222. package/dist/drivers/razer/viper-hid.js.map +1 -0
  223. package/dist/drivers/razer/viper-mini-hid.d.ts +58 -0
  224. package/dist/drivers/razer/viper-mini-hid.d.ts.map +1 -0
  225. package/dist/drivers/razer/viper-mini-hid.js +273 -0
  226. package/dist/drivers/razer/viper-mini-hid.js.map +1 -0
  227. package/dist/drivers/razer/viper-v4-pro-hid.d.ts +26 -0
  228. package/dist/drivers/razer/viper-v4-pro-hid.d.ts.map +1 -0
  229. package/dist/drivers/razer/viper-v4-pro-hid.js +154 -0
  230. package/dist/drivers/razer/viper-v4-pro-hid.js.map +1 -0
  231. package/dist/drivers/registry.d.ts +70 -0
  232. package/dist/drivers/registry.d.ts.map +1 -0
  233. package/dist/drivers/registry.js +146 -0
  234. package/dist/drivers/registry.js.map +1 -0
  235. package/dist/drivers/steelseries/aerox3-hid.d.ts +53 -0
  236. package/dist/drivers/steelseries/aerox3-hid.d.ts.map +1 -0
  237. package/dist/drivers/steelseries/aerox3-hid.js +172 -0
  238. package/dist/drivers/steelseries/aerox3-hid.js.map +1 -0
  239. package/dist/drivers/steelseries/aerox5-hid.d.ts +54 -0
  240. package/dist/drivers/steelseries/aerox5-hid.d.ts.map +1 -0
  241. package/dist/drivers/steelseries/aerox5-hid.js +173 -0
  242. package/dist/drivers/steelseries/aerox5-hid.js.map +1 -0
  243. package/dist/drivers/steelseries/aerox5-wireless-hid.d.ts +69 -0
  244. package/dist/drivers/steelseries/aerox5-wireless-hid.d.ts.map +1 -0
  245. package/dist/drivers/steelseries/aerox5-wireless-hid.js +234 -0
  246. package/dist/drivers/steelseries/aerox5-wireless-hid.js.map +1 -0
  247. package/dist/drivers/steelseries/aerox9-wireless-hid.d.ts +70 -0
  248. package/dist/drivers/steelseries/aerox9-wireless-hid.d.ts.map +1 -0
  249. package/dist/drivers/steelseries/aerox9-wireless-hid.js +227 -0
  250. package/dist/drivers/steelseries/aerox9-wireless-hid.js.map +1 -0
  251. package/dist/drivers/steelseries/hid.d.ts +48 -0
  252. package/dist/drivers/steelseries/hid.d.ts.map +1 -0
  253. package/dist/drivers/steelseries/hid.js +157 -0
  254. package/dist/drivers/steelseries/hid.js.map +1 -0
  255. package/dist/drivers/steelseries/prime-mini-wireless-hid.d.ts +62 -0
  256. package/dist/drivers/steelseries/prime-mini-wireless-hid.d.ts.map +1 -0
  257. package/dist/drivers/steelseries/prime-mini-wireless-hid.js +215 -0
  258. package/dist/drivers/steelseries/prime-mini-wireless-hid.js.map +1 -0
  259. package/dist/drivers/steelseries/prime-plus-hid.d.ts +51 -0
  260. package/dist/drivers/steelseries/prime-plus-hid.d.ts.map +1 -0
  261. package/dist/drivers/steelseries/prime-plus-hid.js +150 -0
  262. package/dist/drivers/steelseries/prime-plus-hid.js.map +1 -0
  263. package/dist/drivers/steelseries/rival3-wireless-hid.d.ts +61 -0
  264. package/dist/drivers/steelseries/rival3-wireless-hid.d.ts.map +1 -0
  265. package/dist/drivers/steelseries/rival3-wireless-hid.js +185 -0
  266. package/dist/drivers/steelseries/rival3-wireless-hid.js.map +1 -0
  267. package/dist/drivers/steelseries/rival310-hid.d.ts +59 -0
  268. package/dist/drivers/steelseries/rival310-hid.d.ts.map +1 -0
  269. package/dist/drivers/steelseries/rival310-hid.js +182 -0
  270. package/dist/drivers/steelseries/rival310-hid.js.map +1 -0
  271. package/dist/drivers/steelseries/rival650-hid.d.ts +68 -0
  272. package/dist/drivers/steelseries/rival650-hid.d.ts.map +1 -0
  273. package/dist/drivers/steelseries/rival650-hid.js +209 -0
  274. package/dist/drivers/steelseries/rival650-hid.js.map +1 -0
  275. package/dist/drivers/steelseries/sensei-ten-hid.d.ts +62 -0
  276. package/dist/drivers/steelseries/sensei-ten-hid.d.ts.map +1 -0
  277. package/dist/drivers/steelseries/sensei-ten-hid.js +186 -0
  278. package/dist/drivers/steelseries/sensei-ten-hid.js.map +1 -0
  279. package/dist/drivers/teevolution/hid.d.ts +82 -0
  280. package/dist/drivers/teevolution/hid.d.ts.map +1 -0
  281. package/dist/drivers/teevolution/hid.js +607 -0
  282. package/dist/drivers/teevolution/hid.js.map +1 -0
  283. package/dist/drivers/vendors.d.ts +254 -0
  284. package/dist/drivers/vendors.d.ts.map +1 -0
  285. package/dist/drivers/vendors.js +587 -0
  286. package/dist/drivers/vendors.js.map +1 -0
  287. package/dist/drivers/vgn/hid.d.ts +33 -0
  288. package/dist/drivers/vgn/hid.d.ts.map +1 -0
  289. package/dist/drivers/vgn/hid.js +213 -0
  290. package/dist/drivers/vgn/hid.js.map +1 -0
  291. package/dist/drivers/wallhack/keyboard-hid.d.ts +28 -0
  292. package/dist/drivers/wallhack/keyboard-hid.d.ts.map +1 -0
  293. package/dist/drivers/wallhack/keyboard-hid.js +80 -0
  294. package/dist/drivers/wallhack/keyboard-hid.js.map +1 -0
  295. package/dist/drivers/wallhack/mouse-hid.d.ts +45 -0
  296. package/dist/drivers/wallhack/mouse-hid.d.ts.map +1 -0
  297. package/dist/drivers/wallhack/mouse-hid.js +288 -0
  298. package/dist/drivers/wallhack/mouse-hid.js.map +1 -0
  299. package/dist/drivers/webhid.d.ts +59 -0
  300. package/dist/drivers/webhid.d.ts.map +1 -0
  301. package/dist/drivers/webhid.js +2 -0
  302. package/dist/drivers/webhid.js.map +1 -0
  303. package/dist/drivers/wlmouse/hid.d.ts +81 -0
  304. package/dist/drivers/wlmouse/hid.d.ts.map +1 -0
  305. package/dist/drivers/wlmouse/hid.js +576 -0
  306. package/dist/drivers/wlmouse/hid.js.map +1 -0
  307. package/dist/drivers/wooting/hid.d.ts +86 -0
  308. package/dist/drivers/wooting/hid.d.ts.map +1 -0
  309. package/dist/drivers/wooting/hid.js +320 -0
  310. package/dist/drivers/wooting/hid.js.map +1 -0
  311. package/dist/drivers/zaunkoenig/hid.d.ts +31 -0
  312. package/dist/drivers/zaunkoenig/hid.d.ts.map +1 -0
  313. package/dist/drivers/zaunkoenig/hid.js +162 -0
  314. package/dist/drivers/zaunkoenig/hid.js.map +1 -0
  315. package/dist/endgame-gear/op1.d.ts +165 -0
  316. package/dist/endgame-gear/op1.d.ts.map +1 -0
  317. package/dist/endgame-gear/op1.js +384 -0
  318. package/dist/endgame-gear/op1.js.map +1 -0
  319. package/dist/endgame-gear/wireless.d.ts +93 -0
  320. package/dist/endgame-gear/wireless.d.ts.map +1 -0
  321. package/dist/endgame-gear/wireless.js +242 -0
  322. package/dist/endgame-gear/wireless.js.map +1 -0
  323. package/dist/fantech/index.d.ts +9 -0
  324. package/dist/fantech/index.d.ts.map +1 -0
  325. package/dist/fantech/index.js +11 -0
  326. package/dist/fantech/index.js.map +1 -0
  327. package/dist/finalmouse/index.d.ts +41 -0
  328. package/dist/finalmouse/index.d.ts.map +1 -0
  329. package/dist/finalmouse/index.js +106 -0
  330. package/dist/finalmouse/index.js.map +1 -0
  331. package/dist/gearhub/index.d.ts +210 -0
  332. package/dist/gearhub/index.d.ts.map +1 -0
  333. package/dist/gearhub/index.js +282 -0
  334. package/dist/gearhub/index.js.map +1 -0
  335. package/dist/glorious/index.d.ts +89 -0
  336. package/dist/glorious/index.d.ts.map +1 -0
  337. package/dist/glorious/index.js +236 -0
  338. package/dist/glorious/index.js.map +1 -0
  339. package/dist/glorious-classic/index.d.ts +103 -0
  340. package/dist/glorious-classic/index.d.ts.map +1 -0
  341. package/dist/glorious-classic/index.js +304 -0
  342. package/dist/glorious-classic/index.js.map +1 -0
  343. package/dist/gwolves/index.d.ts +82 -0
  344. package/dist/gwolves/index.d.ts.map +1 -0
  345. package/dist/gwolves/index.js +197 -0
  346. package/dist/gwolves/index.js.map +1 -0
  347. package/dist/hyperx/index.d.ts +181 -0
  348. package/dist/hyperx/index.d.ts.map +1 -0
  349. package/dist/hyperx/index.js +303 -0
  350. package/dist/hyperx/index.js.map +1 -0
  351. package/dist/incott/index.d.ts +1067 -0
  352. package/dist/incott/index.d.ts.map +1 -0
  353. package/dist/incott/index.js +1482 -0
  354. package/dist/incott/index.js.map +1 -0
  355. package/dist/index.d.ts +30 -0
  356. package/dist/index.d.ts.map +1 -0
  357. package/dist/index.js +30 -0
  358. package/dist/index.js.map +1 -0
  359. package/dist/keychron/index.d.ts +194 -0
  360. package/dist/keychron/index.d.ts.map +1 -0
  361. package/dist/keychron/index.js +341 -0
  362. package/dist/keychron/index.js.map +1 -0
  363. package/dist/ksnake/index.d.ts +157 -0
  364. package/dist/ksnake/index.d.ts.map +1 -0
  365. package/dist/ksnake/index.js +314 -0
  366. package/dist/ksnake/index.js.map +1 -0
  367. package/dist/lamzu/atlantis.d.ts +237 -0
  368. package/dist/lamzu/atlantis.d.ts.map +1 -0
  369. package/dist/lamzu/atlantis.js +263 -0
  370. package/dist/lamzu/atlantis.js.map +1 -0
  371. package/dist/lamzu/index.d.ts +60 -0
  372. package/dist/lamzu/index.d.ts.map +1 -0
  373. package/dist/lamzu/index.js +86 -0
  374. package/dist/lamzu/index.js.map +1 -0
  375. package/dist/logitech/controls.d.ts +138 -0
  376. package/dist/logitech/controls.d.ts.map +1 -0
  377. package/dist/logitech/controls.js +184 -0
  378. package/dist/logitech/controls.js.map +1 -0
  379. package/dist/logitech/friendly-name.d.ts +50 -0
  380. package/dist/logitech/friendly-name.d.ts.map +1 -0
  381. package/dist/logitech/friendly-name.js +74 -0
  382. package/dist/logitech/friendly-name.js.map +1 -0
  383. package/dist/logitech/haptics.d.ts +97 -0
  384. package/dist/logitech/haptics.d.ts.map +1 -0
  385. package/dist/logitech/haptics.js +116 -0
  386. package/dist/logitech/haptics.js.map +1 -0
  387. package/dist/logitech/hosts.d.ts +55 -0
  388. package/dist/logitech/hosts.d.ts.map +1 -0
  389. package/dist/logitech/hosts.js +80 -0
  390. package/dist/logitech/hosts.js.map +1 -0
  391. package/dist/logitech/index.d.ts +127 -0
  392. package/dist/logitech/index.d.ts.map +1 -0
  393. package/dist/logitech/index.js +233 -0
  394. package/dist/logitech/index.js.map +1 -0
  395. package/dist/logitech/wheel.d.ts +117 -0
  396. package/dist/logitech/wheel.d.ts.map +1 -0
  397. package/dist/logitech/wheel.js +133 -0
  398. package/dist/logitech/wheel.js.map +1 -0
  399. package/dist/mchose/a5-gen1.d.ts +38 -0
  400. package/dist/mchose/a5-gen1.d.ts.map +1 -0
  401. package/dist/mchose/a5-gen1.js +60 -0
  402. package/dist/mchose/a5-gen1.js.map +1 -0
  403. package/dist/mchose/buttons.d.ts +66 -0
  404. package/dist/mchose/buttons.d.ts.map +1 -0
  405. package/dist/mchose/buttons.js +184 -0
  406. package/dist/mchose/buttons.js.map +1 -0
  407. package/dist/mchose/dock.d.ts +77 -0
  408. package/dist/mchose/dock.d.ts.map +1 -0
  409. package/dist/mchose/dock.js +133 -0
  410. package/dist/mchose/dock.js.map +1 -0
  411. package/dist/mchose/index.d.ts +299 -0
  412. package/dist/mchose/index.d.ts.map +1 -0
  413. package/dist/mchose/index.js +429 -0
  414. package/dist/mchose/index.js.map +1 -0
  415. package/dist/mchose/v3-buttons.d.ts +64 -0
  416. package/dist/mchose/v3-buttons.d.ts.map +1 -0
  417. package/dist/mchose/v3-buttons.js +258 -0
  418. package/dist/mchose/v3-buttons.js.map +1 -0
  419. package/dist/mchose/v3.d.ts +380 -0
  420. package/dist/mchose/v3.d.ts.map +1 -0
  421. package/dist/mchose/v3.js +608 -0
  422. package/dist/mchose/v3.js.map +1 -0
  423. package/dist/microsoft/index.d.ts +19 -0
  424. package/dist/microsoft/index.d.ts.map +1 -0
  425. package/dist/microsoft/index.js +22 -0
  426. package/dist/microsoft/index.js.map +1 -0
  427. package/dist/moddo/index.d.ts +72 -0
  428. package/dist/moddo/index.d.ts.map +1 -0
  429. package/dist/moddo/index.js +147 -0
  430. package/dist/moddo/index.js.map +1 -0
  431. package/dist/ninjutso/index.d.ts +74 -0
  432. package/dist/ninjutso/index.d.ts.map +1 -0
  433. package/dist/ninjutso/index.js +133 -0
  434. package/dist/ninjutso/index.js.map +1 -0
  435. package/dist/orbital/index.d.ts +14 -0
  436. package/dist/orbital/index.d.ts.map +1 -0
  437. package/dist/orbital/index.js +19 -0
  438. package/dist/orbital/index.js.map +1 -0
  439. package/dist/pulsar/index.d.ts +81 -0
  440. package/dist/pulsar/index.d.ts.map +1 -0
  441. package/dist/pulsar/index.js +185 -0
  442. package/dist/pulsar/index.js.map +1 -0
  443. package/dist/rawm/index.d.ts +55 -0
  444. package/dist/rawm/index.d.ts.map +1 -0
  445. package/dist/rawm/index.js +229 -0
  446. package/dist/rawm/index.js.map +1 -0
  447. package/dist/razer/codec.d.ts +504 -0
  448. package/dist/razer/codec.d.ts.map +1 -0
  449. package/dist/razer/codec.js +648 -0
  450. package/dist/razer/codec.js.map +1 -0
  451. package/dist/razer/devices.d.ts +156 -0
  452. package/dist/razer/devices.d.ts.map +1 -0
  453. package/dist/razer/devices.js +540 -0
  454. package/dist/razer/devices.js.map +1 -0
  455. package/dist/razer/index.d.ts +2 -0
  456. package/dist/razer/index.d.ts.map +1 -0
  457. package/dist/razer/index.js +2 -0
  458. package/dist/razer/index.js.map +1 -0
  459. package/dist/razer/v4.d.ts +19 -0
  460. package/dist/razer/v4.d.ts.map +1 -0
  461. package/dist/razer/v4.js +51 -0
  462. package/dist/razer/v4.js.map +1 -0
  463. package/dist/steelseries/aerox3.d.ts +236 -0
  464. package/dist/steelseries/aerox3.d.ts.map +1 -0
  465. package/dist/steelseries/aerox3.js +311 -0
  466. package/dist/steelseries/aerox3.js.map +1 -0
  467. package/dist/steelseries/aerox5-wireless.d.ts +300 -0
  468. package/dist/steelseries/aerox5-wireless.d.ts.map +1 -0
  469. package/dist/steelseries/aerox5-wireless.js +389 -0
  470. package/dist/steelseries/aerox5-wireless.js.map +1 -0
  471. package/dist/steelseries/aerox5.d.ts +228 -0
  472. package/dist/steelseries/aerox5.d.ts.map +1 -0
  473. package/dist/steelseries/aerox5.js +294 -0
  474. package/dist/steelseries/aerox5.js.map +1 -0
  475. package/dist/steelseries/aerox9-wireless.d.ts +213 -0
  476. package/dist/steelseries/aerox9-wireless.d.ts.map +1 -0
  477. package/dist/steelseries/aerox9-wireless.js +305 -0
  478. package/dist/steelseries/aerox9-wireless.js.map +1 -0
  479. package/dist/steelseries/devices.d.ts +82 -0
  480. package/dist/steelseries/devices.d.ts.map +1 -0
  481. package/dist/steelseries/devices.js +310 -0
  482. package/dist/steelseries/devices.js.map +1 -0
  483. package/dist/steelseries/index.d.ts +13 -0
  484. package/dist/steelseries/index.d.ts.map +1 -0
  485. package/dist/steelseries/index.js +13 -0
  486. package/dist/steelseries/index.js.map +1 -0
  487. package/dist/steelseries/prime-mini-wireless.d.ts +253 -0
  488. package/dist/steelseries/prime-mini-wireless.d.ts.map +1 -0
  489. package/dist/steelseries/prime-mini-wireless.js +351 -0
  490. package/dist/steelseries/prime-mini-wireless.js.map +1 -0
  491. package/dist/steelseries/prime-plus.d.ts +179 -0
  492. package/dist/steelseries/prime-plus.d.ts.map +1 -0
  493. package/dist/steelseries/prime-plus.js +275 -0
  494. package/dist/steelseries/prime-plus.js.map +1 -0
  495. package/dist/steelseries/rival3-wireless.d.ts +222 -0
  496. package/dist/steelseries/rival3-wireless.d.ts.map +1 -0
  497. package/dist/steelseries/rival3-wireless.js +308 -0
  498. package/dist/steelseries/rival3-wireless.js.map +1 -0
  499. package/dist/steelseries/rival3.d.ts +99 -0
  500. package/dist/steelseries/rival3.d.ts.map +1 -0
  501. package/dist/steelseries/rival3.js +147 -0
  502. package/dist/steelseries/rival3.js.map +1 -0
  503. package/dist/steelseries/rival310.d.ts +230 -0
  504. package/dist/steelseries/rival310.d.ts.map +1 -0
  505. package/dist/steelseries/rival310.js +322 -0
  506. package/dist/steelseries/rival310.js.map +1 -0
  507. package/dist/steelseries/rival650.d.ts +215 -0
  508. package/dist/steelseries/rival650.d.ts.map +1 -0
  509. package/dist/steelseries/rival650.js +284 -0
  510. package/dist/steelseries/rival650.js.map +1 -0
  511. package/dist/steelseries/sensei-ten.d.ts +283 -0
  512. package/dist/steelseries/sensei-ten.d.ts.map +1 -0
  513. package/dist/steelseries/sensei-ten.js +389 -0
  514. package/dist/steelseries/sensei-ten.js.map +1 -0
  515. package/dist/teevolution/index.d.ts +211 -0
  516. package/dist/teevolution/index.d.ts.map +1 -0
  517. package/dist/teevolution/index.js +458 -0
  518. package/dist/teevolution/index.js.map +1 -0
  519. package/dist/valkyrie/index.d.ts +19 -0
  520. package/dist/valkyrie/index.d.ts.map +1 -0
  521. package/dist/valkyrie/index.js +43 -0
  522. package/dist/valkyrie/index.js.map +1 -0
  523. package/dist/valkyrie/settings.d.ts +28 -0
  524. package/dist/valkyrie/settings.d.ts.map +1 -0
  525. package/dist/valkyrie/settings.js +84 -0
  526. package/dist/valkyrie/settings.js.map +1 -0
  527. package/dist/vgn/index.d.ts +59 -0
  528. package/dist/vgn/index.d.ts.map +1 -0
  529. package/dist/vgn/index.js +165 -0
  530. package/dist/vgn/index.js.map +1 -0
  531. package/dist/wallhack/index.d.ts +165 -0
  532. package/dist/wallhack/index.d.ts.map +1 -0
  533. package/dist/wallhack/index.js +226 -0
  534. package/dist/wallhack/index.js.map +1 -0
  535. package/dist/wlmouse/index.d.ts +4 -0
  536. package/dist/wlmouse/index.d.ts.map +1 -0
  537. package/dist/wlmouse/index.js +7 -0
  538. package/dist/wlmouse/index.js.map +1 -0
  539. package/dist/wooting/index.d.ts +225 -0
  540. package/dist/wooting/index.d.ts.map +1 -0
  541. package/dist/wooting/index.js +296 -0
  542. package/dist/wooting/index.js.map +1 -0
  543. package/dist/zaunkoenig/index.d.ts +49 -0
  544. package/dist/zaunkoenig/index.d.ts.map +1 -0
  545. package/dist/zaunkoenig/index.js +127 -0
  546. package/dist/zaunkoenig/index.js.map +1 -0
  547. package/package.json +193 -0
@@ -0,0 +1,300 @@
1
+ /**
2
+ * SteelSeries Aerox 5 Wireless configuration protocol — pure encode/decode helpers.
3
+ *
4
+ * Reconstructed from public open-source implementations, not vendor software:
5
+ *
6
+ * - rivalcfg `rivalcfg/devices/aerox5_wireless_wired.py` — the primary source
7
+ * for every command byte, product id, and default here, for the mouse's
8
+ * USB-cabled mode (`1038:1854`, plus the Destiny 2 / Diablo IV cosmetic
9
+ * editions `0x185E`/`0x1862`).
10
+ * - rivalcfg `rivalcfg/devices/aerox5_wireless_wireless.py` — the 2.4 GHz
11
+ * dongle mode (`1038:1852`, editions `0x185C`/`0x1860`). Read in full: it
12
+ * is **not** a separate command set, it is `aerox5_wireless_wired.py`'s
13
+ * settings dict comprehended through one `_patch_command` helper that (1)
14
+ * ORs `0b01000000` into every command's first byte and (2) adds a 64-byte
15
+ * `readback_length`. This module implements that same transform
16
+ * (`applyWirelessFlag`) instead of hand-duplicating the wired-mode byte
17
+ * tables, so the two PID groups can never drift out of sync the way a
18
+ * copy-paste would risk.
19
+ * - rivalcfg `rivalcfg/devices/dpi/truemove_air.py` — same TrueMove Air
20
+ * sensor table as the plain (non-wireless) Aerox 5 — imported from
21
+ * `./rival3-wireless.ts`'s `TRUEMOVE_AIR_DPI_TO_BYTE`, not re-derived.
22
+ * - rivalcfg `rivalcfg/handlers/multidpi_range_choice.py` — `dpi_length_byte: 1`,
23
+ * `first_preset: 0` (same as the plain Aerox 5 — **not** 1, unlike Aerox 3
24
+ * and Rival 3 Wireless).
25
+ * - rivalcfg `rivalcfg/handlers/range.py` — `sleep_timer`/`dim_timer`: linear
26
+ * range-to-range mapping, 3-byte little-endian output. Traced by hand:
27
+ * `sleep_timer`'s `output_range` is `[0x000000, 0x124F80, 60000]` against
28
+ * `input_range` `[0, 20, 1]` (minutes) — `0x124F80` is 1,200,000, i.e.
29
+ * 20 minutes × 60000 ms/min, so the output value is simply
30
+ * `minutes * 60000` — and `dim_timer`'s `output_range` is the same
31
+ * `[0x000000, 0x124F80, 1000]` against `input_range` `[0, 1200, 1]`
32
+ * (seconds), i.e. `seconds * 1000`. Both encode little-endian, 3 bytes
33
+ * (`range_length_byte: 3`), per `helpers.uint_to_little_endian_bytearray`.
34
+ * - rivalcfg `rivalcfg/handlers/rgbcolor.py` / `reactive_rgbcolor.py` — RGB
35
+ * value encoding, same as `./aerox3.ts`/`./aerox5.ts`.
36
+ * - rivalcfg `rivalcfg/handlers/none.py` — `rainbow_effect` here is a
37
+ * fixed-argument `[0x22, 0xFF]` command with `value_type: "none"` (just
38
+ * enables the effect on all zones; disabled by writing a color instead),
39
+ * unlike the plain Aerox 5's zone-bitmask `rainbow_effect`.
40
+ * - rivalcfg `rivalcfg/handlers/buttons/buttons.py` — 9 buttons + scroll
41
+ * up/down, byte-identical layout to `./aerox5.ts`'s `AEROX5_BUTTONS` (same
42
+ * ids and offsets, confirmed by direct comparison of the two device
43
+ * files) — reused here as `AEROX5_WIRELESS_BUTTONS`, a structurally
44
+ * identical constant, rather than re-derived from scratch, since the two
45
+ * device files' `buttons_mapping` blocks are identical.
46
+ *
47
+ * ## Why wired-cable-mode and 2.4 GHz-dongle-mode share one module
48
+ *
49
+ * This is the common SteelSeries wireless pattern also seen in Rival 3
50
+ * Wireless's sibling `rival3_wireless_gen2.py` (not implemented here, out of
51
+ * scope): one physical mouse, multiple USB product ids depending on how the
52
+ * host currently sees it, all driven by the same command set modulo a fixed
53
+ * per-transport transform. Concretely: `aerox5_wireless_wireless.py`'s
54
+ * `_patch_command` ORs `0b01000000` (`0x40`) into `command[0]` of every
55
+ * setting, `battery_level`, and `save_command` inherited from
56
+ * `aerox5_wireless_wired.py`, and adds `readback_length: 64` (an expected
57
+ * reply length this module does not need to model — no function here reads
58
+ * or validates a readback payload; callers that care can check the response
59
+ * length themselves). Every command byte in `AEROX5_WIRELESS_COMMAND` below
60
+ * is the wired-mode value; `applyWirelessFlag` produces the 2.4 GHz-mode
61
+ * byte from it on demand, so there is exactly one place either byte can be
62
+ * gotten wrong.
63
+ *
64
+ * ## Why this is a separate protocol family from the plain Aerox 5
65
+ *
66
+ * Despite the shared "Aerox 5" name and several identical command bytes
67
+ * (`0x2D`/`0x2B`/`0x26`/`0x2A`/`0x27`), `aerox5_wireless_wired.py` is a
68
+ * genuinely different command layout from `./aerox5.ts`'s plain
69
+ * `aerox5.py`, confirmed by direct comparison rather than assumed from the
70
+ * shared name:
71
+ *
72
+ * - Polling command `0x2B` shares the byte but **not** the value mapping:
73
+ * `{125:0x03, 250:0x02, 500:0x01, 1000:0x00}` here vs. the plain Aerox 5's
74
+ * `{125:0x04, 250:0x03, 500:0x02, 1000:0x01}` — writing the plain Aerox 5's
75
+ * byte to this device would select the wrong rate.
76
+ * - RGB zone commands are a different packing entirely:
77
+ * `21 01 <zone-index 0/1/2> <r> <g> <b>` here (fixed 6-byte packet, no
78
+ * bitmask, no zero-padding growth) vs. the plain Aerox 5's
79
+ * `21 <bitmask> <padding> <r> <g> <b>` (`./aerox5.ts`'s
80
+ * `steelseriesAerox5EncodeZoneColor`). Do not reuse that function here.
81
+ * - `rainbow_effect` is a fixed no-argument enable (`22 FF`) here vs. the
82
+ * plain Aerox 5's zone-bitmask choice.
83
+ * - This device has `sleep_timer` (`0x29`) and `dim_timer` (`0x23 0F 01 00 00`)
84
+ * settings the plain Aerox 5 profile does not define at all — note
85
+ * `dim_timer`'s command also collides on its first byte (`0x23`) with the
86
+ * plain Aerox 5's `led_brightness` command; they are unrelated settings on
87
+ * unrelated devices, not the same control.
88
+ * - This device has a `battery_level` read (`0x92`, 2-byte reply) the plain
89
+ * Aerox 5 profile has no equivalent of at all (write-only, no getters).
90
+ *
91
+ * PIDs are therefore registered under their own family (`"aerox5-wireless"`),
92
+ * never `"aerox5"`.
93
+ *
94
+ * No corroborating libratbag or OpenRGB source for any of these PIDs was
95
+ * available in this environment (no local libratbag checkout, and OpenRGB's
96
+ * SteelSeries controller files were not reachable this pass) — every command
97
+ * byte above is sourced from rivalcfg alone. This should be treated as
98
+ * unverified beyond rivalcfg until corroborated or hardware-tested.
99
+ *
100
+ * Every command is an HID output report, report id `0x00`, on the vendor
101
+ * configuration interface (`"endpoint": 3` for every model in both rivalcfg
102
+ * files). DPI presets, polling rate, zone colors, reactive color, sleep/dim
103
+ * timers, rainbow, default lighting, and buttons are write-only — neither
104
+ * rivalcfg file defines a getter for any of them. Battery level **is**
105
+ * readable (see below). Settings apply immediately; the save command
106
+ * (`11 00`, wireless-mode `51 00`) persists them to onboard flash. None of
107
+ * this has been verified on physical hardware by this project.
108
+ *
109
+ * ## Battery read
110
+ *
111
+ * `aerox5_wireless_wired.py` defines a `battery_level` block: an
112
+ * output-report write of `0x92` gets a 2-byte input-report reply, where
113
+ * `data[1] & 0b10000000` is the charging flag and
114
+ * `((data[1] & ~0b10000000) - 1) * 5` is the percentage (a coarse 0–100
115
+ * scale in steps of 5, `- 1` because the raw byte is 1-indexed). This module
116
+ * exposes `steelseriesAerox5WirelessBatteryQuery` /
117
+ * `steelseriesAerox5WirelessDecodeBattery` for both transports (2.4 GHz mode
118
+ * additionally needs `0x92 | 0x40 = 0xD2`, produced by
119
+ * `applyWirelessFlag`). This is a **different battery-response shape** from
120
+ * `./rival3-wireless.ts`'s `AA 01` / 3-byte-reply / plain-percentage-byte
121
+ * battery read — do not conflate the two devices' battery decoding.
122
+ */
123
+ export declare const AEROX5_WIRELESS_REPORT_ID = 0;
124
+ /** Wired-cable-mode command bytes; OR `WIRELESS_FLAG` into byte 0 for 2.4 GHz mode. */
125
+ export declare const AEROX5_WIRELESS_COMMAND: {
126
+ readonly dpiPresets: readonly [45];
127
+ readonly pollingRate: readonly [43];
128
+ readonly zoneColor: readonly [33, 1];
129
+ readonly reactiveColor: readonly [38];
130
+ readonly sleepTimer: readonly [41];
131
+ readonly dimTimer: readonly [35, 15, 1, 0, 0];
132
+ readonly buttonsMapping: readonly [42];
133
+ readonly rainbowEffect: readonly [34, 255];
134
+ readonly defaultLighting: readonly [39];
135
+ readonly batteryLevel: readonly [146];
136
+ };
137
+ /** `11 00` wired-mode / `51 00` 2.4 GHz-mode — see `applyWirelessFlag`. */
138
+ export declare const AEROX5_WIRELESS_SAVE_COMMAND: readonly [17, 0];
139
+ /**
140
+ * `_patch_command`: OR `0b01000000` into the command's first byte. Pass the
141
+ * wired-mode command bytes from `AEROX5_WIRELESS_COMMAND` /
142
+ * `AEROX5_WIRELESS_SAVE_COMMAND`; returns the 2.4 GHz-mode equivalent.
143
+ */
144
+ export declare function applyWirelessFlag(command: readonly number[]): number[];
145
+ export declare const AEROX5_WIRELESS_POLLING_RATES: readonly [125, 250, 500, 1000];
146
+ export declare const AEROX5_WIRELESS_DPI_MIN = 100;
147
+ export declare const AEROX5_WIRELESS_DPI_MAX = 18000;
148
+ export declare const AEROX5_WIRELESS_DPI_STEP = 100;
149
+ export declare const AEROX5_WIRELESS_MAX_DPI_PRESETS = 5;
150
+ export declare const AEROX5_WIRELESS_BATTERY_RESPONSE_LENGTH = 2;
151
+ export declare class Aerox5WirelessProtocolError extends Error {
152
+ }
153
+ /** The 180 DPI values the shared TrueMove Air sensor table can express, ascending. */
154
+ export declare function steelseriesAerox5WirelessDpiOptions(): number[];
155
+ /**
156
+ * `2D <count> <selected> <v1>…<vN>` (or `6D …` in 2.4 GHz mode). One byte
157
+ * per DPI; `selectedIndex` is 0-based and encoded 0-based on the wire
158
+ * (`first_preset: 0`, same as the plain Aerox 5).
159
+ */
160
+ export declare function steelseriesAerox5WirelessEncodeDpiPresets(presets: readonly number[], selectedIndex: number, wireless: boolean): Uint8Array;
161
+ /** `2B <v>` (`6B` wireless) with 1000→0x00, 500→0x01, 250→0x02, 125→0x03. */
162
+ export declare function steelseriesAerox5WirelessEncodePollingRate(pollingRateHz: number, wireless: boolean): Uint8Array;
163
+ export type Aerox5WirelessZone = 1 | 2 | 3;
164
+ /**
165
+ * `21 01 <zone-index> <r> <g> <b>` (`61 01 …` wireless) — a fixed 6-byte
166
+ * packet, **not** the plain Aerox 5's bitmask-plus-padding shape. Zone 1 =
167
+ * top LED, zone 2 = middle LED, zone 3 = bottom LED (strip order, per the
168
+ * source's CLI flag labels).
169
+ */
170
+ export declare function steelseriesAerox5WirelessEncodeZoneColor(zone: Aerox5WirelessZone, r: number, g: number, b: number, wireless: boolean): Uint8Array;
171
+ /**
172
+ * `26 00 00 00 00 00` when disabled, `26 01 00 <r> <g> <b>` when enabled
173
+ * (`66 …` wireless) — same shape as `./aerox3.ts`/`./aerox5.ts`.
174
+ */
175
+ export declare function steelseriesAerox5WirelessEncodeReactiveColor(color: {
176
+ r: number;
177
+ g: number;
178
+ b: number;
179
+ } | null, wireless: boolean): Uint8Array;
180
+ /**
181
+ * `29 <ms LE24>` (`69 …` wireless) — idle minutes before sleep, `0` disables.
182
+ * Encoded as `minutes * 60000` milliseconds, little-endian 3 bytes (see
183
+ * module doc comment for the range-handler derivation).
184
+ */
185
+ export declare function steelseriesAerox5WirelessEncodeSleepTimer(minutes: number, wireless: boolean): Uint8Array;
186
+ /**
187
+ * `23 0F 01 00 00 <ms LE24>` (`63 …` wireless) — idle seconds before the LEDs
188
+ * dim, `0` disables. Encoded as `seconds * 1000` milliseconds, little-endian
189
+ * 3 bytes.
190
+ */
191
+ export declare function steelseriesAerox5WirelessEncodeDimTimer(seconds: number, wireless: boolean): Uint8Array;
192
+ /** `22 FF` (`62 FF` wireless) — enables the rainbow effect on all zones; a color write clears it. */
193
+ export declare function steelseriesAerox5WirelessEncodeRainbowEffect(wireless: boolean): Uint8Array;
194
+ /** Byte-identical to the plain Aerox 5's `AEROX5_DEFAULT_LIGHTING` table. */
195
+ export declare const AEROX5_WIRELESS_DEFAULT_LIGHTING: {
196
+ readonly off: readonly [0, 0];
197
+ readonly reactive: readonly [0, 1];
198
+ readonly rainbow: readonly [1, 0];
199
+ readonly "reactive-rainbow": readonly [1, 1];
200
+ };
201
+ export type Aerox5WirelessDefaultLighting = keyof typeof AEROX5_WIRELESS_DEFAULT_LIGHTING;
202
+ /** `27 <v1> <v2>` (`67 …` wireless) — what the mouse lights up as before a host ever connects. */
203
+ export declare function steelseriesAerox5WirelessEncodeDefaultLighting(mode: Aerox5WirelessDefaultLighting, wireless: boolean): Uint8Array;
204
+ /** `11 00` wired-mode / `51 00` 2.4 GHz-mode — commit the current settings to onboard flash. */
205
+ export declare function steelseriesAerox5WirelessSaveCommand(wireless: boolean): Uint8Array;
206
+ /** `92` wired-mode / `D2` 2.4 GHz-mode — the device answers with a two-byte input report. */
207
+ export declare function steelseriesAerox5WirelessBatteryQuery(wireless: boolean): Uint8Array;
208
+ export interface Aerox5WirelessBattery {
209
+ /** `((data[1] & ~0x80) - 1) * 5` in rivalcfg — a coarse 0–100 scale in steps of 5. */
210
+ level: number;
211
+ /** `bool(data[1] & 0b10000000)` in rivalcfg. */
212
+ isCharging: boolean;
213
+ }
214
+ /**
215
+ * Decode the two-byte battery response: `data[0]` is unused by rivalcfg's
216
+ * lambdas, `data[1]`'s top bit is the charging flag and the remaining 7 bits
217
+ * (1-indexed, hence `- 1`) scaled by 5 give the percentage.
218
+ */
219
+ export declare function steelseriesAerox5WirelessDecodeBattery(payload: Uint8Array): Aerox5WirelessBattery;
220
+ /**
221
+ * `buttons_mapping.buttons` from `aerox5_wireless_wired.py` — byte-identical
222
+ * ids/offsets to `./aerox5.ts`'s `AEROX5_BUTTONS`, confirmed by direct
223
+ * comparison of the two device files, defined separately here rather than
224
+ * imported so each family's button table stays self-contained.
225
+ */
226
+ export declare const AEROX5_WIRELESS_BUTTONS: {
227
+ readonly button1: {
228
+ readonly id: 1;
229
+ readonly offset: 0;
230
+ };
231
+ readonly button2: {
232
+ readonly id: 2;
233
+ readonly offset: 5;
234
+ };
235
+ readonly button3: {
236
+ readonly id: 3;
237
+ readonly offset: 10;
238
+ };
239
+ readonly button4: {
240
+ readonly id: 4;
241
+ readonly offset: 15;
242
+ };
243
+ readonly button5: {
244
+ readonly id: 5;
245
+ readonly offset: 20;
246
+ };
247
+ readonly button6: {
248
+ readonly id: 6;
249
+ readonly offset: 25;
250
+ };
251
+ readonly button7: {
252
+ readonly id: 7;
253
+ readonly offset: 30;
254
+ };
255
+ readonly button8: {
256
+ readonly id: 8;
257
+ readonly offset: 35;
258
+ };
259
+ readonly button9: {
260
+ readonly id: 9;
261
+ readonly offset: 40;
262
+ };
263
+ readonly scrollUp: {
264
+ readonly id: 49;
265
+ readonly offset: 45;
266
+ };
267
+ readonly scrollDown: {
268
+ readonly id: 50;
269
+ readonly offset: 50;
270
+ };
271
+ };
272
+ export type Aerox5WirelessButtonName = keyof typeof AEROX5_WIRELESS_BUTTONS;
273
+ /**
274
+ * One button's target. `scrollUp`/`scrollDown` cannot be remap *targets*
275
+ * (`button_scroll_up`/`button_scroll_down` are `None` in the source) — only
276
+ * sources, same rule as the plain Aerox 5.
277
+ */
278
+ export type Aerox5WirelessButtonAction = {
279
+ type: "button";
280
+ target: Exclude<Aerox5WirelessButtonName, "scrollUp" | "scrollDown">;
281
+ } | {
282
+ type: "disabled";
283
+ } | {
284
+ type: "dpiSwitch";
285
+ } | {
286
+ type: "keyboard";
287
+ code: number;
288
+ } | {
289
+ type: "multimedia";
290
+ code: number;
291
+ };
292
+ /**
293
+ * `2A` (`6A` wireless) + one 55-byte (`11 buttons × 5-byte field length`)
294
+ * packet, zero-filled except where a mapping is given. Unmapped buttons are
295
+ * left as all-zero fields (rivalcfg instead fills in per-button defaults;
296
+ * this codec leaves that policy to the caller — pass every button
297
+ * explicitly for parity with rivalcfg's default profile).
298
+ */
299
+ export declare function steelseriesAerox5WirelessEncodeButtonsMapping(mapping: Partial<Record<Aerox5WirelessButtonName, Aerox5WirelessButtonAction>>, wireless: boolean): Uint8Array;
300
+ //# sourceMappingURL=aerox5-wireless.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aerox5-wireless.d.ts","sourceRoot":"","sources":["../../src/steelseries/aerox5-wireless.ts"],"names":[],"mappings":"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"}