@battle-racing/br-common-lib 1.0.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 (411) hide show
  1. package/.prettierrc +8 -0
  2. package/dist/checkpoint/Checkpoint.d.ts +10 -0
  3. package/dist/checkpoint/Checkpoint.js +2 -0
  4. package/dist/checkpoint/CheckpointType.d.ts +5 -0
  5. package/dist/checkpoint/CheckpointType.js +8 -0
  6. package/dist/checkpoint/index.d.ts +2 -0
  7. package/dist/checkpoint/index.js +18 -0
  8. package/dist/color/ColorInfo.d.ts +4 -0
  9. package/dist/color/ColorInfo.js +2 -0
  10. package/dist/color/ColorName.d.ts +1 -0
  11. package/dist/color/ColorName.js +2 -0
  12. package/dist/color/index.d.ts +2 -0
  13. package/dist/color/index.js +18 -0
  14. package/dist/command/CommandConfig.d.ts +156 -0
  15. package/dist/command/CommandConfig.js +2 -0
  16. package/dist/command/index.d.ts +1 -0
  17. package/dist/command/index.js +17 -0
  18. package/dist/damage/Damage.d.ts +14 -0
  19. package/dist/damage/Damage.js +2 -0
  20. package/dist/damage/DamageName.d.ts +1 -0
  21. package/dist/damage/DamageName.js +2 -0
  22. package/dist/damage/DamageTarget.d.ts +1 -0
  23. package/dist/damage/DamageTarget.js +2 -0
  24. package/dist/damage/index.d.ts +3 -0
  25. package/dist/damage/index.js +19 -0
  26. package/dist/flow/Flow.d.ts +7 -0
  27. package/dist/flow/Flow.js +2 -0
  28. package/dist/flow/index.d.ts +1 -0
  29. package/dist/flow/index.js +17 -0
  30. package/dist/game/Game.d.ts +36 -0
  31. package/dist/game/Game.js +14 -0
  32. package/dist/game/GameStatus.d.ts +9 -0
  33. package/dist/game/GameStatus.js +12 -0
  34. package/dist/game/GameType.d.ts +5 -0
  35. package/dist/game/GameType.js +8 -0
  36. package/dist/game/GameWarningEvent.d.ts +1 -0
  37. package/dist/game/GameWarningEvent.js +2 -0
  38. package/dist/game/KartRankingItem.d.ts +5 -0
  39. package/dist/game/KartRankingItem.js +2 -0
  40. package/dist/game/battle/Battle.d.ts +9 -0
  41. package/dist/game/battle/Battle.js +2 -0
  42. package/dist/game/battle/index.d.ts +1 -0
  43. package/dist/game/battle/index.js +17 -0
  44. package/dist/game/index.d.ts +7 -0
  45. package/dist/game/index.js +23 -0
  46. package/dist/game/race/KartProgress.d.ts +10 -0
  47. package/dist/game/race/KartProgress.js +2 -0
  48. package/dist/game/race/Race.d.ts +17 -0
  49. package/dist/game/race/Race.js +2 -0
  50. package/dist/game/race/index.d.ts +2 -0
  51. package/dist/game/race/index.js +18 -0
  52. package/dist/gameTrack/GameTrack.d.ts +12 -0
  53. package/dist/gameTrack/GameTrack.js +2 -0
  54. package/dist/gameTrack/GameTrackKartsConfig.d.ts +21 -0
  55. package/dist/gameTrack/GameTrackKartsConfig.js +2 -0
  56. package/dist/gameTrack/index.d.ts +2 -0
  57. package/dist/gameTrack/index.js +18 -0
  58. package/dist/hardware/KartEffect.d.ts +1 -0
  59. package/dist/hardware/KartEffect.js +2 -0
  60. package/dist/hardware/ModuleName.d.ts +1 -0
  61. package/dist/hardware/ModuleName.js +2 -0
  62. package/dist/hardware/ModuleStatus.d.ts +9 -0
  63. package/dist/hardware/ModuleStatus.js +2 -0
  64. package/dist/hardware/ballSensor/BallSensorCommand.d.ts +1 -0
  65. package/dist/hardware/ballSensor/BallSensorCommand.js +2 -0
  66. package/dist/hardware/ballSensor/BallSensorDiskThrowerModuleStatus.d.ts +4 -0
  67. package/dist/hardware/ballSensor/BallSensorDiskThrowerModuleStatus.js +2 -0
  68. package/dist/hardware/ballSensor/BallSensorStatus.d.ts +1 -0
  69. package/dist/hardware/ballSensor/BallSensorStatus.js +2 -0
  70. package/dist/hardware/ballSensor/ConfigureBallSensorDiskThrowerModuleOptions.d.ts +4 -0
  71. package/dist/hardware/ballSensor/ConfigureBallSensorDiskThrowerModuleOptions.js +2 -0
  72. package/dist/hardware/ballSensor/index.d.ts +4 -0
  73. package/dist/hardware/ballSensor/index.js +20 -0
  74. package/dist/hardware/ballShooter/BallShooterCommand.d.ts +1 -0
  75. package/dist/hardware/ballShooter/BallShooterCommand.js +2 -0
  76. package/dist/hardware/ballShooter/BallShooterStatus.d.ts +1 -0
  77. package/dist/hardware/ballShooter/BallShooterStatus.js +2 -0
  78. package/dist/hardware/ballShooter/index.d.ts +2 -0
  79. package/dist/hardware/ballShooter/index.js +18 -0
  80. package/dist/hardware/diskSensor/ConfigDiskSensorBallShooterModuleOptions.d.ts +8 -0
  81. package/dist/hardware/diskSensor/ConfigDiskSensorBallShooterModuleOptions.js +2 -0
  82. package/dist/hardware/diskSensor/DiskSensorBallShooterModuleStatus.d.ts +4 -0
  83. package/dist/hardware/diskSensor/DiskSensorBallShooterModuleStatus.js +2 -0
  84. package/dist/hardware/diskSensor/DiskSensorCommand.d.ts +1 -0
  85. package/dist/hardware/diskSensor/DiskSensorCommand.js +2 -0
  86. package/dist/hardware/diskSensor/DiskSensorStatus.d.ts +1 -0
  87. package/dist/hardware/diskSensor/DiskSensorStatus.js +2 -0
  88. package/dist/hardware/diskSensor/index.d.ts +4 -0
  89. package/dist/hardware/diskSensor/index.js +20 -0
  90. package/dist/hardware/diskThrower/DiskThrowerCommand.d.ts +1 -0
  91. package/dist/hardware/diskThrower/DiskThrowerCommand.js +2 -0
  92. package/dist/hardware/diskThrower/DiskThrowerStatus.d.ts +1 -0
  93. package/dist/hardware/diskThrower/DiskThrowerStatus.js +2 -0
  94. package/dist/hardware/diskThrower/index.d.ts +2 -0
  95. package/dist/hardware/diskThrower/index.js +18 -0
  96. package/dist/hardware/emergency/EmergencyActionCommand.d.ts +1 -0
  97. package/dist/hardware/emergency/EmergencyActionCommand.js +2 -0
  98. package/dist/hardware/emergency/EmergencyModuleStatus.d.ts +4 -0
  99. package/dist/hardware/emergency/EmergencyModuleStatus.js +2 -0
  100. package/dist/hardware/emergency/EmergencyStatus.d.ts +1 -0
  101. package/dist/hardware/emergency/EmergencyStatus.js +2 -0
  102. package/dist/hardware/emergency/index.d.ts +3 -0
  103. package/dist/hardware/emergency/index.js +19 -0
  104. package/dist/hardware/flag/FlagActionCommand.d.ts +1 -0
  105. package/dist/hardware/flag/FlagActionCommand.js +2 -0
  106. package/dist/hardware/flag/FlagConfigurationOptions.d.ts +10 -0
  107. package/dist/hardware/flag/FlagConfigurationOptions.js +2 -0
  108. package/dist/hardware/flag/FlagMediaName.d.ts +74 -0
  109. package/dist/hardware/flag/FlagMediaName.js +85 -0
  110. package/dist/hardware/flag/FlagModuleStatus.d.ts +7 -0
  111. package/dist/hardware/flag/FlagModuleStatus.js +2 -0
  112. package/dist/hardware/flag/FlagShowMediaOptions.d.ts +14 -0
  113. package/dist/hardware/flag/FlagShowMediaOptions.js +2 -0
  114. package/dist/hardware/flag/FlagStatus.d.ts +1 -0
  115. package/dist/hardware/flag/FlagStatus.js +2 -0
  116. package/dist/hardware/flag/index.d.ts +6 -0
  117. package/dist/hardware/flag/index.js +22 -0
  118. package/dist/hardware/index.d.ts +15 -0
  119. package/dist/hardware/index.js +31 -0
  120. package/dist/hardware/rgb/RGBActionCommand.d.ts +1 -0
  121. package/dist/hardware/rgb/RGBActionCommand.js +2 -0
  122. package/dist/hardware/rgb/RGBConfigurationOptions.d.ts +8 -0
  123. package/dist/hardware/rgb/RGBConfigurationOptions.js +2 -0
  124. package/dist/hardware/rgb/RGBModuleStatus.d.ts +6 -0
  125. package/dist/hardware/rgb/RGBModuleStatus.js +2 -0
  126. package/dist/hardware/rgb/RGBShowEffectOptions.d.ts +4 -0
  127. package/dist/hardware/rgb/RGBShowEffectOptions.js +2 -0
  128. package/dist/hardware/rgb/RGBStatus.d.ts +1 -0
  129. package/dist/hardware/rgb/RGBStatus.js +2 -0
  130. package/dist/hardware/rgb/index.d.ts +5 -0
  131. package/dist/hardware/rgb/index.js +21 -0
  132. package/dist/hardware/screen/ScreenBattleViewConfig.d.ts +4 -0
  133. package/dist/hardware/screen/ScreenBattleViewConfig.js +2 -0
  134. package/dist/hardware/screen/ScreenCountdownParams.d.ts +11 -0
  135. package/dist/hardware/screen/ScreenCountdownParams.js +2 -0
  136. package/dist/hardware/screen/ScreenFinishViewInput.d.ts +7 -0
  137. package/dist/hardware/screen/ScreenFinishViewInput.js +2 -0
  138. package/dist/hardware/screen/ScreenGameTimeLeft.d.ts +4 -0
  139. package/dist/hardware/screen/ScreenGameTimeLeft.js +2 -0
  140. package/dist/hardware/screen/ScreenKartPosition.d.ts +4 -0
  141. package/dist/hardware/screen/ScreenKartPosition.js +2 -0
  142. package/dist/hardware/screen/ScreenRaceLaps.d.ts +4 -0
  143. package/dist/hardware/screen/ScreenRaceLaps.js +2 -0
  144. package/dist/hardware/screen/ScreenRaceViewConfig.d.ts +5 -0
  145. package/dist/hardware/screen/ScreenRaceViewConfig.js +2 -0
  146. package/dist/hardware/screen/ScreenUpdateGameViewInput.d.ts +11 -0
  147. package/dist/hardware/screen/ScreenUpdateGameViewInput.js +2 -0
  148. package/dist/hardware/screen/ScreenView.d.ts +1 -0
  149. package/dist/hardware/screen/ScreenView.js +2 -0
  150. package/dist/hardware/screen/ScreenViewBaseConfig.d.ts +11 -0
  151. package/dist/hardware/screen/ScreenViewBaseConfig.js +2 -0
  152. package/dist/hardware/screen/index.d.ts +10 -0
  153. package/dist/hardware/screen/index.js +26 -0
  154. package/dist/hardware/sound/PlaySoundOptions.d.ts +4 -0
  155. package/dist/hardware/sound/PlaySoundOptions.js +2 -0
  156. package/dist/hardware/sound/index.d.ts +1 -0
  157. package/dist/hardware/sound/index.js +17 -0
  158. package/dist/hardware/speed/SpeedActionCommand.d.ts +1 -0
  159. package/dist/hardware/speed/SpeedActionCommand.js +2 -0
  160. package/dist/hardware/speed/SpeedChangeOptions.d.ts +6 -0
  161. package/dist/hardware/speed/SpeedChangeOptions.js +2 -0
  162. package/dist/hardware/speed/SpeedConfiguration.d.ts +6 -0
  163. package/dist/hardware/speed/SpeedConfiguration.js +2 -0
  164. package/dist/hardware/speed/SpeedModuleStatus.d.ts +12 -0
  165. package/dist/hardware/speed/SpeedModuleStatus.js +2 -0
  166. package/dist/hardware/speed/SpeedStatus.d.ts +1 -0
  167. package/dist/hardware/speed/SpeedStatus.js +2 -0
  168. package/dist/hardware/speed/index.d.ts +5 -0
  169. package/dist/hardware/speed/index.js +21 -0
  170. package/dist/hardware/star-laser/StarLaserCommand.d.ts +1 -0
  171. package/dist/hardware/star-laser/StarLaserCommand.js +2 -0
  172. package/dist/hardware/star-laser/StarLaserConfigureModuleOptions.d.ts +7 -0
  173. package/dist/hardware/star-laser/StarLaserConfigureModuleOptions.js +2 -0
  174. package/dist/hardware/star-laser/StarLaserModuleStatus.d.ts +7 -0
  175. package/dist/hardware/star-laser/StarLaserModuleStatus.js +2 -0
  176. package/dist/hardware/star-laser/StarLaserSendActionsOptions.d.ts +5 -0
  177. package/dist/hardware/star-laser/StarLaserSendActionsOptions.js +2 -0
  178. package/dist/hardware/star-laser/StarLaserStatus.d.ts +1 -0
  179. package/dist/hardware/star-laser/StarLaserStatus.js +2 -0
  180. package/dist/hardware/star-laser/index.d.ts +5 -0
  181. package/dist/hardware/star-laser/index.js +21 -0
  182. package/dist/hardware/steering-wheel/SteeringWheelModuleStatus.d.ts +4 -0
  183. package/dist/hardware/steering-wheel/SteeringWheelModuleStatus.js +2 -0
  184. package/dist/hardware/steering-wheel/index.d.ts +1 -0
  185. package/dist/hardware/steering-wheel/index.js +17 -0
  186. package/dist/index.d.ts +20 -0
  187. package/dist/index.js +36 -0
  188. package/dist/kart/Kart.d.ts +29 -0
  189. package/dist/kart/Kart.js +2 -0
  190. package/dist/kart/KartShield.d.ts +4 -0
  191. package/dist/kart/KartShield.js +2 -0
  192. package/dist/kart/KartStatus.d.ts +2 -0
  193. package/dist/kart/KartStatus.js +4 -0
  194. package/dist/kart/index.d.ts +2 -0
  195. package/dist/kart/index.js +18 -0
  196. package/dist/kartTracking/CheckpointEvent.d.ts +8 -0
  197. package/dist/kartTracking/CheckpointEvent.js +2 -0
  198. package/dist/kartTracking/KartTracking.d.ts +5 -0
  199. package/dist/kartTracking/KartTracking.js +2 -0
  200. package/dist/kartTracking/index.d.ts +2 -0
  201. package/dist/kartTracking/index.js +18 -0
  202. package/dist/powerUp/PowerUp.d.ts +27 -0
  203. package/dist/powerUp/PowerUp.js +2 -0
  204. package/dist/powerUp/PowerUpName.d.ts +1 -0
  205. package/dist/powerUp/PowerUpName.js +2 -0
  206. package/dist/powerUp/PowerUpShield.d.ts +6 -0
  207. package/dist/powerUp/PowerUpShield.js +2 -0
  208. package/dist/powerUp/PowerUpTarget.d.ts +11 -0
  209. package/dist/powerUp/PowerUpTarget.js +10 -0
  210. package/dist/powerUp/PowerUpType.d.ts +8 -0
  211. package/dist/powerUp/PowerUpType.js +7 -0
  212. package/dist/powerUp/index.d.ts +5 -0
  213. package/dist/powerUp/index.js +21 -0
  214. package/dist/response/ErrorResponse.d.ts +6 -0
  215. package/dist/response/ErrorResponse.js +2 -0
  216. package/dist/response/Response.d.ts +3 -0
  217. package/dist/response/Response.js +2 -0
  218. package/dist/response/SuccesResponse.d.ts +5 -0
  219. package/dist/response/SuccesResponse.js +2 -0
  220. package/dist/response/index.d.ts +3 -0
  221. package/dist/response/index.js +2 -0
  222. package/dist/socket/SocketHardwareModulesEventsParams.d.ts +65 -0
  223. package/dist/socket/SocketHardwareModulesEventsParams.js +2 -0
  224. package/dist/socket/SocketHardwareOnDataEventsParams.d.ts +16 -0
  225. package/dist/socket/SocketHardwareOnDataEventsParams.js +2 -0
  226. package/dist/socket/SocketPowerUpEventsParams.d.ts +21 -0
  227. package/dist/socket/SocketPowerUpEventsParams.js +2 -0
  228. package/dist/socket/clientToServer/SocketGameTrackClientToServerEventsParams.d.ts +13 -0
  229. package/dist/socket/clientToServer/SocketGameTrackClientToServerEventsParams.js +2 -0
  230. package/dist/socket/clientToServer/SocketKartClientToServerEventsParams.d.ts +16 -0
  231. package/dist/socket/clientToServer/SocketKartClientToServerEventsParams.js +2 -0
  232. package/dist/socket/clientToServer/SocketWebAppClientToServerEventsParams.d.ts +22 -0
  233. package/dist/socket/clientToServer/SocketWebAppClientToServerEventsParams.js +2 -0
  234. package/dist/socket/clientToServer/index.d.ts +3 -0
  235. package/dist/socket/clientToServer/index.js +19 -0
  236. package/dist/socket/index.d.ts +7 -0
  237. package/dist/socket/index.js +23 -0
  238. package/dist/socket/inputs/MacAddressGameTrackConnection.d.ts +6 -0
  239. package/dist/socket/inputs/MacAddressGameTrackConnection.js +2 -0
  240. package/dist/socket/inputs/SocketInitRaspberryInput.d.ts +3 -0
  241. package/dist/socket/inputs/SocketInitRaspberryInput.js +2 -0
  242. package/dist/socket/inputs/SocketRegisterKartCheckpointInput.d.ts +11 -0
  243. package/dist/socket/inputs/SocketRegisterKartCheckpointInput.js +2 -0
  244. package/dist/socket/inputs/index.d.ts +3 -0
  245. package/dist/socket/inputs/index.js +19 -0
  246. package/dist/socket/serverToClient/SocketGameTrackServerToClientEventParams.d.ts +10 -0
  247. package/dist/socket/serverToClient/SocketGameTrackServerToClientEventParams.js +2 -0
  248. package/dist/socket/serverToClient/SocketKartServerToClientEventsParams.d.ts +48 -0
  249. package/dist/socket/serverToClient/SocketKartServerToClientEventsParams.js +2 -0
  250. package/dist/socket/serverToClient/SocketWebAppServerToClientEventsParams.d.ts +24 -0
  251. package/dist/socket/serverToClient/SocketWebAppServerToClientEventsParams.js +2 -0
  252. package/dist/socket/serverToClient/index.d.ts +3 -0
  253. package/dist/socket/serverToClient/index.js +19 -0
  254. package/dist/socket/utils/SocketParamsToEvents.d.ts +10 -0
  255. package/dist/socket/utils/SocketParamsToEvents.js +2 -0
  256. package/dist/socket/utils/index.d.ts +1 -0
  257. package/dist/socket/utils/index.js +17 -0
  258. package/dist/sounds/SoundName.d.ts +1 -0
  259. package/dist/sounds/SoundName.js +2 -0
  260. package/dist/sounds/index.d.ts +1 -0
  261. package/dist/sounds/index.js +17 -0
  262. package/dist/user/User.d.ts +7 -0
  263. package/dist/user/User.js +2 -0
  264. package/dist/user/UserOrigin.d.ts +1 -0
  265. package/dist/user/UserOrigin.js +2 -0
  266. package/dist/user/index.d.ts +2 -0
  267. package/dist/user/index.js +18 -0
  268. package/dist/utils/ArithmeticString.d.ts +9 -0
  269. package/dist/utils/ArithmeticString.js +2 -0
  270. package/dist/utils/ObjectValues.d.ts +1 -0
  271. package/dist/utils/ObjectValues.js +2 -0
  272. package/dist/utils/index.d.ts +2 -0
  273. package/dist/utils/index.js +18 -0
  274. package/package.json +22 -0
  275. package/src/types/checkpoint/Checkpoint.ts +11 -0
  276. package/src/types/checkpoint/CheckpointType.ts +6 -0
  277. package/src/types/checkpoint/index.ts +2 -0
  278. package/src/types/color/ColorInfo.ts +4 -0
  279. package/src/types/color/ColorName.ts +13 -0
  280. package/src/types/color/index.ts +2 -0
  281. package/src/types/command/CommandConfig.ts +91 -0
  282. package/src/types/command/index.ts +1 -0
  283. package/src/types/damage/Damage.ts +15 -0
  284. package/src/types/damage/DamageName.ts +1 -0
  285. package/src/types/damage/DamageTarget.ts +1 -0
  286. package/src/types/damage/index.ts +3 -0
  287. package/src/types/flow/Flow.ts +8 -0
  288. package/src/types/flow/index.ts +1 -0
  289. package/src/types/game/Game.ts +39 -0
  290. package/src/types/game/GameStatus.ts +10 -0
  291. package/src/types/game/GameType.ts +6 -0
  292. package/src/types/game/GameWarningEvent.ts +1 -0
  293. package/src/types/game/KartRankingItem.ts +5 -0
  294. package/src/types/game/battle/Battle.ts +11 -0
  295. package/src/types/game/battle/index.ts +1 -0
  296. package/src/types/game/index.ts +7 -0
  297. package/src/types/game/race/KartProgress.ts +10 -0
  298. package/src/types/game/race/Race.ts +20 -0
  299. package/src/types/game/race/index.ts +2 -0
  300. package/src/types/gameTrack/GameTrack.ts +13 -0
  301. package/src/types/gameTrack/GameTrackKartsConfig.ts +25 -0
  302. package/src/types/gameTrack/index.ts +2 -0
  303. package/src/types/hardware/KartEffect.ts +19 -0
  304. package/src/types/hardware/ModuleName.ts +10 -0
  305. package/src/types/hardware/ModuleStatus.ts +18 -0
  306. package/src/types/hardware/ballSensor/BallSensorCommand.ts +1 -0
  307. package/src/types/hardware/ballSensor/BallSensorDiskThrowerModuleStatus.ts +5 -0
  308. package/src/types/hardware/ballSensor/BallSensorStatus.ts +1 -0
  309. package/src/types/hardware/ballSensor/ConfigureBallSensorDiskThrowerModuleOptions.ts +4 -0
  310. package/src/types/hardware/ballSensor/index.ts +4 -0
  311. package/src/types/hardware/ballShooter/BallShooterCommand.ts +1 -0
  312. package/src/types/hardware/ballShooter/BallShooterStatus.ts +6 -0
  313. package/src/types/hardware/ballShooter/index.ts +2 -0
  314. package/src/types/hardware/diskSensor/ConfigDiskSensorBallShooterModuleOptions.ts +8 -0
  315. package/src/types/hardware/diskSensor/DiskSensorBallShooterModuleStatus.ts +5 -0
  316. package/src/types/hardware/diskSensor/DiskSensorCommand.ts +1 -0
  317. package/src/types/hardware/diskSensor/DiskSensorStatus.ts +9 -0
  318. package/src/types/hardware/diskSensor/index.ts +4 -0
  319. package/src/types/hardware/diskThrower/DiskThrowerCommand.ts +1 -0
  320. package/src/types/hardware/diskThrower/DiskThrowerStatus.ts +1 -0
  321. package/src/types/hardware/diskThrower/index.ts +2 -0
  322. package/src/types/hardware/emergency/EmergencyActionCommand.ts +1 -0
  323. package/src/types/hardware/emergency/EmergencyModuleStatus.ts +5 -0
  324. package/src/types/hardware/emergency/EmergencyStatus.ts +1 -0
  325. package/src/types/hardware/emergency/index.ts +3 -0
  326. package/src/types/hardware/flag/FlagActionCommand.ts +6 -0
  327. package/src/types/hardware/flag/FlagConfigurationOptions.ts +11 -0
  328. package/src/types/hardware/flag/FlagMediaName.ts +87 -0
  329. package/src/types/hardware/flag/FlagModuleStatus.ts +8 -0
  330. package/src/types/hardware/flag/FlagShowMediaOptions.ts +15 -0
  331. package/src/types/hardware/flag/FlagStatus.ts +8 -0
  332. package/src/types/hardware/flag/index.ts +6 -0
  333. package/src/types/hardware/index.ts +15 -0
  334. package/src/types/hardware/rgb/RGBActionCommand.ts +1 -0
  335. package/src/types/hardware/rgb/RGBConfigurationOptions.ts +9 -0
  336. package/src/types/hardware/rgb/RGBModuleStatus.ts +7 -0
  337. package/src/types/hardware/rgb/RGBShowEffectOptions.ts +5 -0
  338. package/src/types/hardware/rgb/RGBStatus.ts +1 -0
  339. package/src/types/hardware/rgb/index.ts +5 -0
  340. package/src/types/hardware/screen/ScreenBattleViewConfig.ts +5 -0
  341. package/src/types/hardware/screen/ScreenCountdownParams.ts +14 -0
  342. package/src/types/hardware/screen/ScreenFinishViewInput.ts +7 -0
  343. package/src/types/hardware/screen/ScreenGameTimeLeft.ts +4 -0
  344. package/src/types/hardware/screen/ScreenKartPosition.ts +4 -0
  345. package/src/types/hardware/screen/ScreenRaceLaps.ts +4 -0
  346. package/src/types/hardware/screen/ScreenRaceViewConfig.ts +6 -0
  347. package/src/types/hardware/screen/ScreenUpdateGameViewInput.ts +14 -0
  348. package/src/types/hardware/screen/ScreenView.ts +1 -0
  349. package/src/types/hardware/screen/ScreenViewBaseConfig.ts +12 -0
  350. package/src/types/hardware/screen/index.ts +10 -0
  351. package/src/types/hardware/sound/PlaySoundOptions.ts +5 -0
  352. package/src/types/hardware/sound/index.ts +1 -0
  353. package/src/types/hardware/speed/SpeedActionCommand.ts +1 -0
  354. package/src/types/hardware/speed/SpeedChangeOptions.ts +6 -0
  355. package/src/types/hardware/speed/SpeedConfiguration.ts +6 -0
  356. package/src/types/hardware/speed/SpeedModuleStatus.ts +13 -0
  357. package/src/types/hardware/speed/SpeedStatus.ts +1 -0
  358. package/src/types/hardware/speed/index.ts +5 -0
  359. package/src/types/hardware/star-laser/StarLaserCommand.ts +1 -0
  360. package/src/types/hardware/star-laser/StarLaserConfigureModuleOptions.ts +7 -0
  361. package/src/types/hardware/star-laser/StarLaserModuleStatus.ts +10 -0
  362. package/src/types/hardware/star-laser/StarLaserSendActionsOptions.ts +6 -0
  363. package/src/types/hardware/star-laser/StarLaserStatus.ts +1 -0
  364. package/src/types/hardware/star-laser/index.ts +5 -0
  365. package/src/types/hardware/steering-wheel/SteeringWheelModuleStatus.ts +4 -0
  366. package/src/types/hardware/steering-wheel/index.ts +1 -0
  367. package/src/types/index.ts +21 -0
  368. package/src/types/kart/Kart.ts +31 -0
  369. package/src/types/kart/KartShield.ts +4 -0
  370. package/src/types/kart/KartStatus.ts +2 -0
  371. package/src/types/kart/index.ts +2 -0
  372. package/src/types/kartTracking/CheckpointEvent.ts +9 -0
  373. package/src/types/kartTracking/KartTracking.ts +6 -0
  374. package/src/types/kartTracking/index.ts +2 -0
  375. package/src/types/powerUp/PowerUp.ts +50 -0
  376. package/src/types/powerUp/PowerUpName.ts +9 -0
  377. package/src/types/powerUp/PowerUpShield.ts +6 -0
  378. package/src/types/powerUp/PowerUpTarget.ts +12 -0
  379. package/src/types/powerUp/PowerUpType.ts +9 -0
  380. package/src/types/powerUp/index.ts +5 -0
  381. package/src/types/response/ErrorResponse.ts +6 -0
  382. package/src/types/response/Response.ts +4 -0
  383. package/src/types/response/SuccesResponse.ts +5 -0
  384. package/src/types/response/index.ts +3 -0
  385. package/src/types/socket/SocketHardwareModulesEventsParams.ts +106 -0
  386. package/src/types/socket/SocketHardwareOnDataEventsParams.ts +27 -0
  387. package/src/types/socket/SocketPowerUpEventsParams.ts +13 -0
  388. package/src/types/socket/clientToServer/SocketGameTrackClientToServerEventsParams.ts +7 -0
  389. package/src/types/socket/clientToServer/SocketKartClientToServerEventsParams.ts +11 -0
  390. package/src/types/socket/clientToServer/SocketWebAppClientToServerEventsParams.ts +11 -0
  391. package/src/types/socket/clientToServer/index.ts +3 -0
  392. package/src/types/socket/index.ts +7 -0
  393. package/src/types/socket/inputs/MacAddressGameTrackConnection.ts +7 -0
  394. package/src/types/socket/inputs/SocketInitRaspberryInput.ts +3 -0
  395. package/src/types/socket/inputs/SocketRegisterKartCheckpointInput.ts +12 -0
  396. package/src/types/socket/inputs/index.ts +3 -0
  397. package/src/types/socket/serverToClient/SocketGameTrackServerToClientEventParams.ts +14 -0
  398. package/src/types/socket/serverToClient/SocketKartServerToClientEventsParams.ts +47 -0
  399. package/src/types/socket/serverToClient/SocketWebAppServerToClientEventsParams.ts +23 -0
  400. package/src/types/socket/serverToClient/index.ts +3 -0
  401. package/src/types/socket/utils/SocketParamsToEvents.ts +16 -0
  402. package/src/types/socket/utils/index.ts +1 -0
  403. package/src/types/sounds/SoundName.ts +24 -0
  404. package/src/types/sounds/index.ts +1 -0
  405. package/src/types/user/User.ts +8 -0
  406. package/src/types/user/UserOrigin.ts +1 -0
  407. package/src/types/user/index.ts +2 -0
  408. package/src/types/utils/ArithmeticString.ts +17 -0
  409. package/src/types/utils/ObjectValues.ts +2 -0
  410. package/src/types/utils/index.ts +2 -0
  411. package/tsconfig.json +13 -0
@@ -0,0 +1,18 @@
1
+ import type { BallSensorDiskThrowerModuleStatus } from './ballSensor';
2
+ import type { DiskSensorBallShooterModuleStatus } from './diskSensor';
3
+ import type { EmergencyModuleStatus } from './emergency';
4
+ import type { FlagModuleStatus } from './flag';
5
+ import type { RGBModuleStatus } from './rgb';
6
+ import type { SpeedModuleStatus } from './speed';
7
+ import type { StarLaserModuleStatus } from './star-laser';
8
+ import type { SteeringWheelModuleStatus } from './steering-wheel';
9
+
10
+ export type ModuleStatus =
11
+ | SpeedModuleStatus
12
+ | RGBModuleStatus
13
+ | FlagModuleStatus
14
+ | DiskSensorBallShooterModuleStatus
15
+ | BallSensorDiskThrowerModuleStatus
16
+ | StarLaserModuleStatus
17
+ | SteeringWheelModuleStatus
18
+ | EmergencyModuleStatus;
@@ -0,0 +1 @@
1
+ export type BallSensorCommand = 'Deactivate Sensor' | 'Activate Sensor' | 'Configure Module';
@@ -0,0 +1,5 @@
1
+ import type { BallSensorStatus } from './BallSensorStatus';
2
+
3
+ export interface BallSensorDiskThrowerModuleStatus {
4
+ ballSensorStatus: BallSensorStatus;
5
+ }
@@ -0,0 +1 @@
1
+ export type BallSensorStatus = 'Sensor Standby' | 'Sensor Deactivated' | 'Sensor Activated' | 'Sensor Hit' | 'Unknown';
@@ -0,0 +1,4 @@
1
+ export type ConfigureBallSensorDiskThrowerModuleOptions = {
2
+ /** Time in seconds (between 1 - 25) */
3
+ waitTimeAfterHit: number;
4
+ };
@@ -0,0 +1,4 @@
1
+ export * from './BallSensorCommand';
2
+ export * from './BallSensorDiskThrowerModuleStatus';
3
+ export * from './BallSensorStatus';
4
+ export * from './ConfigureBallSensorDiskThrowerModuleOptions';
@@ -0,0 +1 @@
1
+ export type BallShooterCommand = 'Shooter Off' | 'Shooter Ready' | 'Shooter Attack';
@@ -0,0 +1,6 @@
1
+ export type BallShooterStatus =
2
+ | 'Shooter Deactivated'
3
+ | 'Shooter Preparing Engines'
4
+ | 'Shooter Accelerating Engines'
5
+ | 'Shooting Ball'
6
+ | 'Unknown';
@@ -0,0 +1,2 @@
1
+ export * from './BallShooterCommand';
2
+ export * from './BallShooterStatus';
@@ -0,0 +1,8 @@
1
+ export type ConfigDiskSensorBallShooterModuleOptions = {
2
+ /** This is the % of energy or voltage the engine is going to use (between 0 - 100) */
3
+ prepareVoltagePercentage?: number;
4
+ /** This is the % of energy or voltage the engine is going to use (between 0 - 100) */
5
+ attackVoltagePercentage?: number;
6
+ /** Time in seconds (between 1 - 25) */
7
+ waitTimeAfterHit?: number;
8
+ };
@@ -0,0 +1,5 @@
1
+ import type { DiskSensorStatus } from './DiskSensorStatus';
2
+
3
+ export interface DiskSensorBallShooterModuleStatus {
4
+ diskSensorStatus: DiskSensorStatus;
5
+ }
@@ -0,0 +1 @@
1
+ export type DiskSensorCommand = 'Deactivate Sensor' | 'Activate Sensor' | 'Calibrate Sensor' | 'Configure Module';
@@ -0,0 +1,9 @@
1
+ export type DiskSensorStatus =
2
+ | 'Sensor Standby'
3
+ | 'Sensor Deactivated'
4
+ | 'Sensor Activated'
5
+ | 'Sensor Hit'
6
+ | 'Sensor Calibrated'
7
+ | 'Sensor In Zone'
8
+ | 'Module In Configuration'
9
+ | 'Unknown';
@@ -0,0 +1,4 @@
1
+ export * from './ConfigDiskSensorBallShooterModuleOptions';
2
+ export * from './DiskSensorBallShooterModuleStatus';
3
+ export * from './DiskSensorCommand';
4
+ export * from './DiskSensorStatus';
@@ -0,0 +1 @@
1
+ export type DiskThrowerCommand = 'Activate Thrower' | 'Deactivate Thrower' | 'Throw Disk';
@@ -0,0 +1 @@
1
+ export type DiskThrowerStatus = 'Thrower Deactivated' | 'Thrower Activated' | 'Throwing Disk' | 'Unknown';
@@ -0,0 +1,2 @@
1
+ export * from './DiskThrowerCommand';
2
+ export * from './DiskThrowerStatus';
@@ -0,0 +1 @@
1
+ export type EmergencyActionCommand = 'Activate' | 'Deactivate';
@@ -0,0 +1,5 @@
1
+ import type { EmergencyStatus } from './EmergencyStatus';
2
+
3
+ export type EmergencyModuleStatus = {
4
+ emergencyStatus: EmergencyStatus;
5
+ };
@@ -0,0 +1 @@
1
+ export type EmergencyStatus = 'Standby' | 'Activated' | 'Deactivated' | 'In Emergency' | 'Unknown';
@@ -0,0 +1,3 @@
1
+ export * from './EmergencyActionCommand';
2
+ export * from './EmergencyModuleStatus';
3
+ export * from './EmergencyStatus';
@@ -0,0 +1,6 @@
1
+ export type FlagActionCommand =
2
+ | 'Activate'
3
+ | 'Deactivate'
4
+ | 'Show Media Indefinitely'
5
+ | 'Show Media Temporarily'
6
+ | 'Configure';
@@ -0,0 +1,11 @@
1
+ import type { ColorName } from '../../color';
2
+
3
+ export interface FlagConfigurationOptions {
4
+ kartId: number;
5
+ kartNumber: number;
6
+ kartColor: ColorName;
7
+ /** % Of Brightness (0 - 100) */
8
+ screenBrightness: number;
9
+ /** Time in seconds (between 1 - 25) */
10
+ animationTime: number;
11
+ }
@@ -0,0 +1,87 @@
1
+ export enum FlagMediaName {
2
+ // Cyan Numbers
3
+ NUMBER_0_CYAN = 'number_0_cyan',
4
+ NUMBER_1_CYAN = 'number_1_cyan',
5
+ NUMBER_2_CYAN = 'number_2_cyan',
6
+ NUMBER_3_CYAN = 'number_3_cyan',
7
+ NUMBER_4_CYAN = 'number_4_cyan',
8
+ NUMBER_5_CYAN = 'number_5_cyan',
9
+ NUMBER_6_CYAN = 'number_6_cyan',
10
+ NUMBER_7_CYAN = 'number_7_cyan',
11
+ NUMBER_8_CYAN = 'number_8_cyan',
12
+ NUMBER_9_CYAN = 'number_9_cyan',
13
+
14
+ // Pink Numbers
15
+ NUMBER_0_PINK = 'number_0_pink',
16
+ NUMBER_1_PINK = 'number_1_pink',
17
+ NUMBER_2_PINK = 'number_2_pink',
18
+ NUMBER_3_PINK = 'number_3_pink',
19
+ NUMBER_4_PINK = 'number_4_pink',
20
+ NUMBER_5_PINK = 'number_5_pink',
21
+ NUMBER_6_PINK = 'number_6_pink',
22
+ NUMBER_7_PINK = 'number_7_pink',
23
+ NUMBER_8_PINK = 'number_8_pink',
24
+ NUMBER_9_PINK = 'number_9_pink',
25
+
26
+ // Hearts
27
+ HEART_00 = 'heart_00',
28
+ HEART_01 = 'heart_01',
29
+ HEART_02 = 'heart_02',
30
+ HEART_03 = 'heart_03',
31
+ HEART_04 = 'heart_04',
32
+ HEART_05 = 'heart_05',
33
+ HEART_06 = 'heart_06',
34
+ HEART_07 = 'heart_07',
35
+ HEART_08 = 'heart_08',
36
+ HEART_09 = 'heart_09',
37
+ HEART_10 = 'heart_10',
38
+ HEART_11 = 'heart_11',
39
+ HEART_12 = 'heart_12',
40
+
41
+ // Emojis
42
+ SMILE = 'smile',
43
+ POOP = 'poop',
44
+ HEART = 'heart',
45
+ LAUGH_WITH_TONGUE_FACE = 'laugh_with_tonge_face',
46
+ LAUGH_WITH_TONGUE_AND_GLASSES_FACE = 'laugh_with_tonge_and_glases_face',
47
+ WINK_TO_SMILE_FACE = 'wink_to_smile_face',
48
+ LAUGH_WITH_TONGUE_AND_HELMET = 'laugh_with_tonge_and_helmet',
49
+ BLUE_SMILE_FACE = 'blue_smile_face',
50
+ BLUE_SMILE_FACE_TO_PINK = 'blue_smile_face_to_pink',
51
+ PINK_FACE_WITH_GLASSES_TO_BLUE = 'pink_face_with_glases_to_blue',
52
+ BLUE_CRYING_FACE = 'blue_crying_face',
53
+ BLUSH_SMILE_FACE_TO_SMILE = 'blush_smile_face_to_smile',
54
+ CRYING_FACE = 'crying_face',
55
+ ANGRY_FACE = 'angry_face',
56
+ IN_LOVE_FACE = 'in_love_face',
57
+ FACE_WITH_GLASSES = 'face_with_glases',
58
+ DEVIL = 'devil',
59
+ GHOST = 'ghost',
60
+ SKULL = 'skull',
61
+ LIKE = 'like',
62
+
63
+ // Flag Power-Ups
64
+ RANDOM_EFFECT = 'random_effect',
65
+ HELMET_BLACK_BACKGROUND = 'helmet_black_background',
66
+ THUNDER_EXPLOSION = 'thunder_explosion',
67
+ SHIELD_BLUE_TO_PINK = 'shield_blue_to_pink',
68
+ FALLING_OIL_DROP = 'falling_oil_drop',
69
+ OIL_DROP_COLORS = 'oil_drop_colors',
70
+ TURBO = 'turbo',
71
+ FIREBALL = 'fireball',
72
+ HIT_EFFECT = 'hit_effect',
73
+ SLOW_SNAIL = 'slow_snail',
74
+ NITRO_BOTTLE = 'nitro_bottle',
75
+ ROCKET_LAUNCHING = 'rocket_launching',
76
+
77
+ // Game Effects
78
+ SPEED_METER_INCREASING = 'speed_meter_increasing',
79
+ THREE_TWO_ONE_RACE_START = 'three_two_one_race_start',
80
+ VICTORY = 'victory',
81
+ DANGER_YELLOW_AND_RED = 'danger_yellow_and_red',
82
+ DANGER_RED_AND_WHITE_RED = 'danger_red_and_white_red',
83
+ REPAIR_TOOLS = 'repair_tools',
84
+
85
+ // Logos
86
+ BR_CHANGE_COLOR = 'br_change_color',
87
+ }
@@ -0,0 +1,8 @@
1
+ import type { CheckpointType } from '../../checkpoint';
2
+ import type { FlagStatus } from './FlagStatus';
3
+
4
+ export type FlagModuleStatus = {
5
+ flagStatus: FlagStatus;
6
+ lastCheckpointAddress: number;
7
+ lastCheckpointType: CheckpointType;
8
+ };
@@ -0,0 +1,15 @@
1
+ import type { FlagMediaName } from './FlagMediaName';
2
+
3
+ export type FlagShowMediaOptions = {
4
+ screens: {
5
+ /** Bit 0 */
6
+ left: boolean;
7
+ /** Bit 1 */
8
+ right: boolean;
9
+ /** Bit 2 */
10
+ front: boolean;
11
+ /** Bit 3 */
12
+ back: boolean;
13
+ };
14
+ mediaSourceName: FlagMediaName;
15
+ };
@@ -0,0 +1,8 @@
1
+ export type FlagStatus =
2
+ | 'Standby'
3
+ | 'Deactivated'
4
+ | 'Activated'
5
+ | 'Hit'
6
+ | 'Showing Image'
7
+ | 'Showing Animation'
8
+ | 'Unknown';
@@ -0,0 +1,6 @@
1
+ export * from './FlagActionCommand';
2
+ export * from './FlagConfigurationOptions';
3
+ export * from './FlagMediaName';
4
+ export * from './FlagModuleStatus';
5
+ export * from './FlagShowMediaOptions';
6
+ export * from './FlagStatus';
@@ -0,0 +1,15 @@
1
+ export * from './ballSensor';
2
+ export * from './ballShooter';
3
+ export * from './diskSensor';
4
+ export * from './diskThrower';
5
+ export * from './emergency';
6
+ export * from './flag';
7
+ export * from './KartEffect';
8
+ export * from './ModuleName';
9
+ export * from './ModuleStatus';
10
+ export * from './rgb';
11
+ export * from './screen';
12
+ export * from './sound';
13
+ export * from './speed';
14
+ export * from './star-laser';
15
+ export * from './steering-wheel';
@@ -0,0 +1 @@
1
+ export type RGBActionCommand = 'Configure' | 'Exec';
@@ -0,0 +1,9 @@
1
+ import type { ColorName } from '../../color';
2
+
3
+ export interface RGBConfigurationOptions {
4
+ kartColor: ColorName;
5
+ /** % Of Brightness (0 - 100) */
6
+ brightness: number;
7
+ /** Time in seconds (between 1 - 25) */
8
+ effectTime: number;
9
+ }
@@ -0,0 +1,7 @@
1
+ import type { ColorName } from '../../color';
2
+ import type { RGBStatus } from './RGBStatus';
3
+
4
+ export type RGBModuleStatus = {
5
+ rgbStatus: RGBStatus;
6
+ kartColor: ColorName;
7
+ };
@@ -0,0 +1,5 @@
1
+ import type { KartEffect } from '../KartEffect';
2
+
3
+ export interface RGBShowEffectOptions {
4
+ effect: KartEffect;
5
+ }
@@ -0,0 +1 @@
1
+ export type RGBStatus = 'Showing Color' | 'Not Configured' | 'Configuring RGB' | 'Showing Effect' | 'Unknown';
@@ -0,0 +1,5 @@
1
+ export * from './RGBActionCommand';
2
+ export * from './RGBShowEffectOptions';
3
+ export * from './RGBModuleStatus';
4
+ export * from './RGBConfigurationOptions';
5
+ export * from './RGBStatus';
@@ -0,0 +1,5 @@
1
+ import type { ScreenViewBaseConfig } from './ScreenViewBaseConfig';
2
+
3
+ export type ScreenBattleViewConfig = ScreenViewBaseConfig & {
4
+ lives?: number | null;
5
+ };
@@ -0,0 +1,14 @@
1
+ import type { ScreenBattleViewConfig } from './ScreenBattleViewConfig';
2
+ import type { ScreenRaceViewConfig } from './ScreenRaceViewConfig';
3
+
4
+ export interface CountDownNextViewRace {
5
+ nextView: 'Race';
6
+ config: ScreenRaceViewConfig;
7
+ }
8
+
9
+ export interface CountDownNextViewBattle {
10
+ nextView: 'Battle';
11
+ config: ScreenBattleViewConfig;
12
+ }
13
+
14
+ export type ScreenCountdownParams = CountDownNextViewRace | CountDownNextViewBattle;
@@ -0,0 +1,7 @@
1
+ export type ScreenFinishViewInput = {
2
+ kartPosition: {
3
+ currentPosition: number;
4
+ totalKarts: number;
5
+ };
6
+ coins: number;
7
+ };
@@ -0,0 +1,4 @@
1
+ export type ScreenGameTimeLeft = {
2
+ minutes?: number | null;
3
+ seconds?: number | null;
4
+ };
@@ -0,0 +1,4 @@
1
+ export type ScreenKartPosition = {
2
+ currentPosition: number | null;
3
+ totalKarts: number | null;
4
+ };
@@ -0,0 +1,4 @@
1
+ export type ScreenRaceLaps = {
2
+ currentLap: number | null;
3
+ totalLaps: number | null;
4
+ };
@@ -0,0 +1,6 @@
1
+ import type { ScreenRaceLaps } from './ScreenRaceLaps';
2
+ import type { ScreenViewBaseConfig } from './ScreenViewBaseConfig';
3
+
4
+ export type ScreenRaceViewConfig = ScreenViewBaseConfig & {
5
+ laps?: ScreenRaceLaps;
6
+ };
@@ -0,0 +1,14 @@
1
+ import type { ScreenBattleViewConfig } from './ScreenBattleViewConfig';
2
+ import type { ScreenRaceViewConfig } from './ScreenRaceViewConfig';
3
+
4
+ export interface UpdateRaceViewInput {
5
+ view: 'Race';
6
+ config: ScreenRaceViewConfig;
7
+ }
8
+
9
+ export interface UpdateBattleViewInput {
10
+ view: 'Battle';
11
+ config: ScreenBattleViewConfig;
12
+ }
13
+
14
+ export type ScreenUpdateGameViewInput = UpdateRaceViewInput | UpdateBattleViewInput;
@@ -0,0 +1 @@
1
+ export type ScreenView = 'Home' | 'Countdown' | 'Race' | 'Battle' | 'Victory' | 'Defeat';
@@ -0,0 +1,12 @@
1
+ import type { DamageEffectName } from '../../damage';
2
+ import type { PowerUpName } from '../../powerUp';
3
+ import type { ScreenGameTimeLeft } from './ScreenGameTimeLeft';
4
+ import type { ScreenKartPosition } from './ScreenKartPosition';
5
+
6
+ export type ScreenViewBaseConfig = {
7
+ position?: ScreenKartPosition;
8
+ coins?: number | null;
9
+ gameTimeLeft?: ScreenGameTimeLeft;
10
+ powerUp?: PowerUpName | 'Clear PowerUp' | null;
11
+ damageEffect?: DamageEffectName | null;
12
+ };
@@ -0,0 +1,10 @@
1
+ export * from './ScreenBattleViewConfig';
2
+ export * from './ScreenCountdownParams';
3
+ export * from './ScreenFinishViewInput';
4
+ export * from './ScreenGameTimeLeft';
5
+ export * from './ScreenKartPosition';
6
+ export * from './ScreenRaceLaps';
7
+ export * from './ScreenRaceViewConfig';
8
+ export * from './ScreenUpdateGameViewInput';
9
+ export * from './ScreenView';
10
+ export * from './ScreenViewBaseConfig';
@@ -0,0 +1,5 @@
1
+ import type { SoundName } from '../../sounds';
2
+
3
+ export interface PlaySoundOptions {
4
+ soundName: SoundName;
5
+ }
@@ -0,0 +1 @@
1
+ export * from './PlaySoundOptions';
@@ -0,0 +1 @@
1
+ export type SpeedActionCommand = 'Activate' | 'Deactivate' | 'ChangeSpeed' | 'Configure';
@@ -0,0 +1,6 @@
1
+ export interface SpeedChangeOptions {
2
+ /** % of Speed. Value between 0 - 100 */
3
+ speed: number;
4
+ /** If the speed is infinite */
5
+ forUnlimitedTime?: boolean;
6
+ }
@@ -0,0 +1,6 @@
1
+ export interface SpeedConfiguration {
2
+ /** % of Speed. Value between 0 - 100 */
3
+ defaultSpeed: number;
4
+ /** Duration of the change of the speed in seconds 1 - 25s */
5
+ timeDuration: number;
6
+ }
@@ -0,0 +1,13 @@
1
+ import type { SpeedStatus } from './SpeedStatus';
2
+
3
+ export type SpeedModuleStatus = {
4
+ speedStatus: SpeedStatus;
5
+ /** The Battery of the Modules */
6
+ battery12V: number;
7
+ /** If there is a Speed change, this should return the current value */
8
+ currentSpeed: number;
9
+ ADCVoltage: number;
10
+ DACVoltage: number;
11
+ /** The current default % speed config (0 - 100) */
12
+ currentDefaultSpeedConfig: number;
13
+ };
@@ -0,0 +1 @@
1
+ export type SpeedStatus = 'Standby' | 'Deactivated' | 'Activated' | 'Changing Speed' | 'In Emergency' | 'Unknown';
@@ -0,0 +1,5 @@
1
+ export * from './SpeedActionCommand';
2
+ export * from './SpeedChangeOptions';
3
+ export * from './SpeedConfiguration';
4
+ export * from './SpeedModuleStatus';
5
+ export * from './SpeedStatus';
@@ -0,0 +1 @@
1
+ export type StarLaserCommand = 'Activate' | 'Deactivate' | 'Init Attack' | 'Configure' | 'None';
@@ -0,0 +1,7 @@
1
+ export interface StarLaserConfigureModuleOptions {
2
+ kartId: number;
3
+ /** Time in seconds (between 1 - 25) */
4
+ starAttackTime: number;
5
+ /** Time in seconds (between 1 - 25) */
6
+ laserAttackTime: number;
7
+ }
@@ -0,0 +1,10 @@
1
+ import type { StarLaserStatus } from './StarLaserStatus';
2
+
3
+ export interface StarLaserModuleStatus {
4
+ starStatus: StarLaserStatus;
5
+ laserStatus: StarLaserStatus;
6
+ // ID of the kart that hit the star
7
+ starHitByKartId: number | null;
8
+ // ID of the kart that hit the laser
9
+ laserHitByKartId: number | null;
10
+ }
@@ -0,0 +1,6 @@
1
+ import type { StarLaserCommand } from './StarLaserCommand';
2
+
3
+ export interface StarLaserSendActionsOptions {
4
+ starAction?: StarLaserCommand;
5
+ laserAction?: StarLaserCommand;
6
+ }
@@ -0,0 +1 @@
1
+ export type StarLaserStatus = 'Standby' | 'Activated' | 'Deactivated' | 'Attacking' | 'Hit' | 'Unknown';
@@ -0,0 +1,5 @@
1
+ export * from './StarLaserCommand';
2
+ export * from './StarLaserConfigureModuleOptions';
3
+ export * from './StarLaserModuleStatus';
4
+ export * from './StarLaserSendActionsOptions';
5
+ export * from './StarLaserStatus';
@@ -0,0 +1,4 @@
1
+ export interface SteeringWheelModuleStatus {
2
+ isLeftButtonPressed: boolean;
3
+ isRightButtonPressed: boolean;
4
+ }
@@ -0,0 +1 @@
1
+ export * from './SteeringWheelModuleStatus';
@@ -0,0 +1,21 @@
1
+ /**
2
+ * This types are shared wihin the 3 Repositories
3
+ * Webapp, Backend and Raspberry
4
+ */
5
+
6
+ export * from './checkpoint';
7
+ export * from './color';
8
+ export * from './command';
9
+ export * from './damage';
10
+ export * from './flow';
11
+ export * from './game';
12
+ export * from './gameTrack';
13
+ export * from './hardware';
14
+ export * from './kart';
15
+ export * from './kartTracking';
16
+ export * from './powerUp';
17
+ export * from './response';
18
+ export * from './socket';
19
+ export * from './sounds';
20
+ export * from './user';
21
+ export * from './utils';
@@ -0,0 +1,31 @@
1
+ import type { ColorName } from '../color';
2
+ import type { GameType } from '../game';
3
+ import type { GameTrack } from '../gameTrack';
4
+ import type { KartShield } from './KartShield';
5
+ import type { KartStatus } from './KartStatus';
6
+
7
+ interface KartGame {
8
+ id: number;
9
+ type: GameType;
10
+ }
11
+
12
+ export interface Kart {
13
+ /** Unique ID by kart */
14
+ guid: string;
15
+ /** kartGuid assigned by Game Track (multiple karts could have the same Id) */
16
+ id: number;
17
+ mac: string;
18
+ isConnected: boolean;
19
+ status: KartStatus;
20
+ shield: KartShield;
21
+ // If a Kart is not assigned to a game, the default gane track should be "TEST"
22
+ gameTrackId: GameTrack['id'];
23
+ color: ColorName;
24
+ number: number;
25
+ currentGame?: KartGame | null;
26
+ description?: string | null;
27
+ /**
28
+ * In testing Mode, the kart should be listening to the hardware status
29
+ */
30
+ isSubscribedToHardwareStatus: boolean;
31
+ }
@@ -0,0 +1,4 @@
1
+ export interface KartShield {
2
+ isActive: boolean;
3
+ duration: number;
4
+ }
@@ -0,0 +1,2 @@
1
+ export const kartStatus = ['standBy', 'in-game', 'yellow-flag', 'emergency', 'pits', 'eliminated'] as const;
2
+ export type KartStatus = (typeof kartStatus)[number];
@@ -0,0 +1,2 @@
1
+ export * from './Kart';
2
+ export * from './KartStatus';
@@ -0,0 +1,9 @@
1
+ import type { Checkpoint } from '../checkpoint';
2
+
3
+ export interface CheckpointEvent extends Checkpoint {
4
+ index: number;
5
+ timestampISO: {
6
+ origin: string;
7
+ server: string;
8
+ };
9
+ }
@@ -0,0 +1,6 @@
1
+ import type { CheckpointEvent } from './CheckpointEvent';
2
+
3
+ export interface KartTracking {
4
+ macAddress: string;
5
+ checkpointsEvents?: CheckpointEvent[];
6
+ }