@open-core/framework 0.1.0-alpha.1 → 0.2.0-beta.1

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 (569) hide show
  1. package/README.md +217 -360
  2. package/dist/adapters/contracts/IEngineEvents.d.ts +20 -0
  3. package/dist/adapters/contracts/IEngineEvents.js +6 -0
  4. package/dist/adapters/contracts/IEntityServer.d.ts +88 -0
  5. package/dist/adapters/contracts/IEntityServer.js +13 -0
  6. package/dist/adapters/contracts/IExports.d.ts +4 -0
  7. package/dist/adapters/contracts/IExports.js +6 -0
  8. package/dist/adapters/contracts/IHasher.d.ts +15 -0
  9. package/dist/adapters/contracts/IHasher.js +12 -0
  10. package/dist/adapters/contracts/INetTransport.d.ts +8 -0
  11. package/dist/adapters/contracts/INetTransport.js +6 -0
  12. package/dist/adapters/contracts/IPedAppearanceClient.d.ts +206 -0
  13. package/dist/adapters/contracts/IPedAppearanceClient.js +16 -0
  14. package/dist/adapters/contracts/IPedAppearanceServer.d.ts +45 -0
  15. package/dist/adapters/contracts/IPedAppearanceServer.js +16 -0
  16. package/dist/adapters/contracts/IPlayerInfo.d.ts +5 -0
  17. package/dist/adapters/contracts/IPlayerInfo.js +6 -0
  18. package/dist/adapters/contracts/IPlayerServer.d.ts +73 -0
  19. package/dist/adapters/contracts/IPlayerServer.js +13 -0
  20. package/dist/adapters/contracts/IResourceInfo.d.ts +3 -0
  21. package/dist/adapters/contracts/IResourceInfo.js +6 -0
  22. package/dist/adapters/contracts/ITick.d.ts +10 -0
  23. package/dist/adapters/contracts/ITick.js +9 -0
  24. package/dist/adapters/contracts/IVehicleServer.d.ts +55 -0
  25. package/dist/adapters/contracts/IVehicleServer.js +13 -0
  26. package/dist/{server/database/adapters → adapters/database}/oxmysql.adapter.d.ts +2 -2
  27. package/dist/{server/database/adapters → adapters/database}/oxmysql.adapter.js +2 -2
  28. package/dist/adapters/database/resource.adapter.d.ts +12 -0
  29. package/dist/adapters/database/resource.adapter.js +68 -0
  30. package/dist/adapters/fivem/fivem-engine-events.d.ts +5 -0
  31. package/dist/adapters/fivem/fivem-engine-events.js +13 -0
  32. package/dist/adapters/fivem/fivem-entity-server.d.ts +22 -0
  33. package/dist/adapters/fivem/fivem-entity-server.js +80 -0
  34. package/dist/adapters/fivem/fivem-exports.d.ts +5 -0
  35. package/dist/adapters/fivem/fivem-exports.js +14 -0
  36. package/dist/adapters/fivem/fivem-hasher.d.ts +7 -0
  37. package/dist/adapters/fivem/fivem-hasher.js +23 -0
  38. package/dist/adapters/fivem/fivem-net-transport.d.ts +5 -0
  39. package/dist/adapters/fivem/fivem-net-transport.js +24 -0
  40. package/dist/adapters/fivem/fivem-ped-appearance-client.d.ts +34 -0
  41. package/dist/adapters/fivem/fivem-ped-appearance-client.js +84 -0
  42. package/dist/adapters/fivem/fivem-ped-appearance-server.d.ts +14 -0
  43. package/dist/adapters/fivem/fivem-ped-appearance-server.js +26 -0
  44. package/dist/adapters/fivem/fivem-player-server.d.ts +15 -0
  45. package/dist/adapters/fivem/fivem-player-server.js +63 -0
  46. package/dist/adapters/fivem/fivem-playerinfo.d.ts +6 -0
  47. package/dist/adapters/fivem/fivem-playerinfo.js +14 -0
  48. package/dist/adapters/fivem/fivem-resourceinfo.d.ts +4 -0
  49. package/dist/adapters/fivem/fivem-resourceinfo.js +16 -0
  50. package/dist/adapters/fivem/fivem-tick.d.ts +7 -0
  51. package/dist/adapters/fivem/fivem-tick.js +22 -0
  52. package/dist/adapters/fivem/fivem-vehicle-server.d.ts +15 -0
  53. package/dist/adapters/fivem/fivem-vehicle-server.js +47 -0
  54. package/dist/adapters/index.d.ts +15 -0
  55. package/dist/adapters/index.js +40 -0
  56. package/dist/adapters/node/index.d.ts +8 -0
  57. package/dist/adapters/node/index.js +19 -0
  58. package/dist/adapters/node/node-engine-events.d.ts +20 -0
  59. package/dist/adapters/node/node-engine-events.js +42 -0
  60. package/dist/adapters/node/node-entity-server.d.ts +26 -0
  61. package/dist/adapters/node/node-entity-server.js +101 -0
  62. package/dist/adapters/node/node-exports.d.ts +26 -0
  63. package/dist/adapters/node/node-exports.js +63 -0
  64. package/dist/adapters/node/node-hasher.d.ts +12 -0
  65. package/dist/adapters/node/node-hasher.js +39 -0
  66. package/dist/adapters/node/node-net-transport.d.ts +18 -0
  67. package/dist/adapters/node/node-net-transport.js +57 -0
  68. package/dist/adapters/node/node-ped-appearance-client.d.ts +34 -0
  69. package/dist/adapters/node/node-ped-appearance-client.js +59 -0
  70. package/dist/adapters/node/node-ped-appearance-server.d.ts +14 -0
  71. package/dist/adapters/node/node-ped-appearance-server.js +18 -0
  72. package/dist/adapters/node/node-player-server.d.ts +27 -0
  73. package/dist/adapters/node/node-player-server.js +82 -0
  74. package/dist/adapters/node/node-playerinfo.d.ts +6 -0
  75. package/dist/adapters/node/node-playerinfo.js +12 -0
  76. package/dist/adapters/node/node-resourceinfo.d.ts +12 -0
  77. package/dist/adapters/node/node-resourceinfo.js +27 -0
  78. package/dist/adapters/node/node-tick.d.ts +10 -0
  79. package/dist/{server/system/processors/command.processor.js → adapters/node/node-tick.js} +27 -14
  80. package/dist/adapters/node/node-vehicle-server.d.ts +21 -0
  81. package/dist/adapters/node/node-vehicle-server.js +93 -0
  82. package/dist/adapters/register-capabilities.d.ts +11 -0
  83. package/dist/adapters/register-capabilities.js +148 -0
  84. package/dist/adapters/register-client-capabilities.d.ts +8 -0
  85. package/dist/adapters/register-client-capabilities.js +56 -0
  86. package/dist/index.d.ts +5 -4
  87. package/dist/index.js +9 -5
  88. package/dist/kernel/di/index.d.ts +4 -0
  89. package/dist/kernel/di/index.js +20 -0
  90. package/dist/{system → kernel/di}/metadata.scanner.d.ts +1 -2
  91. package/dist/kernel/di/tokens.d.ts +30 -0
  92. package/dist/kernel/di/tokens.js +38 -0
  93. package/dist/kernel/index.d.ts +7 -0
  94. package/dist/kernel/index.js +30 -0
  95. package/dist/kernel/schema/index.d.ts +32 -0
  96. package/dist/kernel/schema/index.js +5 -0
  97. package/dist/kernel/shared/appearance/appearance.interface.d.ts +276 -0
  98. package/dist/kernel/shared/appearance/appearance.interface.js +77 -0
  99. package/dist/kernel/shared/appearance/index.d.ts +1 -0
  100. package/dist/kernel/shared/appearance/index.js +17 -0
  101. package/dist/kernel/shared/index.d.ts +2 -0
  102. package/dist/{shared → kernel/shared}/index.js +1 -0
  103. package/dist/{shared → kernel/shared}/logger/core-logger.d.ts +13 -0
  104. package/dist/{shared → kernel/shared}/logger/core-logger.js +38 -9
  105. package/dist/{shared → kernel/shared}/logger/index.d.ts +12 -9
  106. package/dist/{shared → kernel/shared}/logger/index.js +24 -15
  107. package/dist/{shared → kernel/shared}/logger/logger.config.d.ts +1 -1
  108. package/dist/kernel/shared/logger/logger.env.d.ts +28 -0
  109. package/dist/kernel/shared/logger/logger.env.js +51 -0
  110. package/dist/{shared → kernel/shared}/logger/logger.service.d.ts +2 -2
  111. package/dist/{shared → kernel/shared}/logger/transports/buffered.transport.d.ts +2 -2
  112. package/dist/{shared → kernel/shared}/logger/transports/buffered.transport.js +1 -1
  113. package/dist/{shared → kernel/shared}/logger/transports/console.transport.d.ts +2 -2
  114. package/dist/{shared → kernel/shared}/logger/transports/console.transport.js +1 -0
  115. package/dist/kernel/shared/logger/transports/dev-transport.factory.d.ts +75 -0
  116. package/dist/kernel/shared/logger/transports/dev-transport.factory.js +111 -0
  117. package/dist/kernel/shared/logger/transports/http.transport.d.ts +67 -0
  118. package/dist/kernel/shared/logger/transports/http.transport.js +170 -0
  119. package/dist/kernel/shared/logger/transports/index.d.ts +7 -0
  120. package/dist/kernel/shared/logger/transports/index.js +34 -0
  121. package/dist/kernel/shared/logger/transports/simple-console.transport.d.ts +38 -0
  122. package/dist/kernel/shared/logger/transports/simple-console.transport.js +93 -0
  123. package/dist/{shared → kernel/shared}/logger/transports/transport.interface.d.ts +1 -1
  124. package/dist/kernel/shared/logger/transports/websocket.transport.d.ts +69 -0
  125. package/dist/kernel/shared/logger/transports/websocket.transport.js +169 -0
  126. package/dist/kernel/utils/error/app.error.d.ts +9 -0
  127. package/dist/{utils/errors.js → kernel/utils/error/app.error.js} +1 -9
  128. package/dist/kernel/utils/error/security.error.d.ts +6 -0
  129. package/dist/kernel/utils/error/security.error.js +12 -0
  130. package/dist/{utils → kernel/utils}/index.d.ts +3 -2
  131. package/dist/{utils → kernel/utils}/index.js +3 -2
  132. package/dist/{utils → kernel/utils}/result.d.ts +1 -1
  133. package/dist/runtime/client/client-bootstrap.d.ts +7 -0
  134. package/dist/runtime/client/client-bootstrap.js +180 -0
  135. package/dist/runtime/client/client-core.d.ts +19 -0
  136. package/dist/runtime/client/client-core.js +24 -0
  137. package/dist/runtime/client/client-runtime.d.ts +58 -0
  138. package/dist/runtime/client/client-runtime.js +32 -0
  139. package/dist/runtime/client/controllers/appearance.controller.d.ts +8 -0
  140. package/dist/runtime/client/controllers/appearance.controller.js +50 -0
  141. package/dist/runtime/client/controllers/player-sync.controller.d.ts +11 -0
  142. package/dist/runtime/client/controllers/player-sync.controller.js +54 -0
  143. package/dist/{client → runtime/client}/controllers/spawner.controller.d.ts +1 -1
  144. package/dist/runtime/client/decorators/controller.d.ts +20 -0
  145. package/dist/runtime/client/decorators/controller.js +55 -0
  146. package/dist/runtime/client/decorators/export.d.ts +21 -0
  147. package/dist/runtime/client/decorators/export.js +29 -0
  148. package/dist/{client → runtime/client}/decorators/gameEvent.d.ts +2 -2
  149. package/dist/runtime/client/decorators/interval.d.ts +23 -0
  150. package/dist/runtime/client/decorators/interval.js +31 -0
  151. package/dist/runtime/client/decorators/key.d.ts +23 -0
  152. package/dist/runtime/client/decorators/key.js +31 -0
  153. package/dist/runtime/client/decorators/localEvent.d.ts +21 -0
  154. package/dist/runtime/client/decorators/localEvent.js +29 -0
  155. package/dist/runtime/client/decorators/nui.d.ts +21 -0
  156. package/dist/runtime/client/decorators/nui.js +29 -0
  157. package/dist/runtime/client/decorators/onNet.d.ts +21 -0
  158. package/dist/runtime/client/decorators/onNet.js +29 -0
  159. package/dist/runtime/client/decorators/resourceLifecycle.d.ts +40 -0
  160. package/dist/runtime/client/decorators/resourceLifecycle.js +53 -0
  161. package/dist/runtime/client/decorators/tick.d.ts +21 -0
  162. package/dist/runtime/client/decorators/tick.js +29 -0
  163. package/dist/{client → runtime/client}/index.d.ts +2 -2
  164. package/dist/{client → runtime/client}/index.js +4 -2
  165. package/dist/runtime/client/interfaces/appearance.interface.d.ts +25 -0
  166. package/dist/runtime/client/interfaces/appearance.interface.js +2 -0
  167. package/dist/{client → runtime/client}/player/player.d.ts +1 -1
  168. package/dist/{client → runtime/client}/player/player.js +5 -6
  169. package/dist/{client → runtime/client}/player/player.loader.js +2 -2
  170. package/dist/runtime/client/services/appearance.service.d.ts +132 -0
  171. package/dist/runtime/client/services/appearance.service.js +328 -0
  172. package/dist/{client → runtime/client}/services/blip.service.d.ts +1 -1
  173. package/dist/{client → runtime/client}/services/index.d.ts +6 -5
  174. package/dist/{client → runtime/client}/services/index.js +6 -5
  175. package/dist/{client → runtime/client}/services/marker.service.d.ts +1 -1
  176. package/dist/{client → runtime/client}/services/ped.service.d.ts +1 -1
  177. package/dist/{client → runtime/client}/services/ped.service.js +3 -2
  178. package/dist/{client → runtime/client}/services/spawn.service.d.ts +2 -2
  179. package/dist/{client → runtime/client}/services/spawn.service.js +4 -8
  180. package/dist/{client → runtime/client}/services/textui.service.d.ts +1 -1
  181. package/dist/runtime/client/services/vehicle-client.service.d.ts +180 -0
  182. package/dist/runtime/client/services/vehicle-client.service.js +485 -0
  183. package/dist/{client → runtime/client}/services/vehicle.service.d.ts +2 -2
  184. package/dist/{client → runtime/client}/services/vehicle.service.js +1 -1
  185. package/dist/{client → runtime/client}/system/processors/export.processor.d.ts +1 -1
  186. package/dist/{client → runtime/client}/system/processors/export.processor.js +1 -1
  187. package/dist/{client → runtime/client}/system/processors/gameEvent.processor.d.ts +1 -1
  188. package/dist/{client → runtime/client}/system/processors/gameEvent.processor.js +2 -2
  189. package/dist/{client → runtime/client}/system/processors/interval.processor.d.ts +1 -1
  190. package/dist/{client → runtime/client}/system/processors/interval.processor.js +1 -1
  191. package/dist/{client → runtime/client}/system/processors/key.processor.d.ts +1 -1
  192. package/dist/{client → runtime/client}/system/processors/localEvent.processor.d.ts +1 -1
  193. package/dist/{client → runtime/client}/system/processors/localEvent.processor.js +1 -1
  194. package/dist/{client → runtime/client}/system/processors/netEvent.processor.d.ts +1 -1
  195. package/dist/{client → runtime/client}/system/processors/netEvent.processor.js +1 -1
  196. package/dist/{client → runtime/client}/system/processors/nui.processor.d.ts +1 -1
  197. package/dist/{client → runtime/client}/system/processors/nui.processor.js +1 -1
  198. package/dist/{client → runtime/client}/system/processors/resourceLifecycle.processor.d.ts +1 -1
  199. package/dist/{client → runtime/client}/system/processors/resourceLifecycle.processor.js +1 -1
  200. package/dist/{client → runtime/client}/system/processors/tick.processor.d.ts +1 -1
  201. package/dist/{client → runtime/client}/system/processors/tick.processor.js +1 -1
  202. package/dist/{client → runtime/client}/types/game-events.js +0 -8
  203. package/dist/{client → runtime/client}/ui-bridge.js +1 -1
  204. package/dist/runtime/index.d.ts +2 -0
  205. package/dist/runtime/index.js +39 -0
  206. package/dist/{server → runtime/server}/bootstrap.d.ts +2 -1
  207. package/dist/runtime/server/bootstrap.js +234 -0
  208. package/dist/runtime/server/bootstrap.validation.d.ts +12 -0
  209. package/dist/runtime/server/bootstrap.validation.js +102 -0
  210. package/dist/runtime/server/bus/core-event-bus.d.ts +6 -0
  211. package/dist/{server → runtime/server}/bus/core-event-bus.js +5 -5
  212. package/dist/{server → runtime/server}/configs/api.config.d.ts +1 -1
  213. package/dist/{server/templates/auth → runtime/server/contracts}/auth-provider.contract.d.ts +2 -2
  214. package/dist/runtime/server/contracts/index.d.ts +7 -0
  215. package/dist/{server/templates → runtime/server/contracts}/index.js +8 -4
  216. package/dist/{server/templates/persistence → runtime/server/contracts}/player-persistence.contract.d.ts +1 -1
  217. package/dist/{server/templates → runtime/server/contracts}/repository/index.d.ts +2 -2
  218. package/dist/{server/templates → runtime/server/contracts}/repository/index.js +1 -1
  219. package/dist/{server/templates → runtime/server/contracts}/repository/repository.contract.d.ts +2 -2
  220. package/dist/{server/templates → runtime/server/contracts}/repository/repository.contract.js +0 -1
  221. package/dist/runtime/server/contracts/security/net-event-security-observer.contract.d.ts +15 -0
  222. package/dist/runtime/server/contracts/security/net-event-security-observer.contract.js +6 -0
  223. package/dist/{server/templates → runtime/server/contracts}/security/principal-provider.contract.d.ts +3 -3
  224. package/dist/{server/templates → runtime/server/contracts}/security/security-handler.contract.d.ts +2 -2
  225. package/dist/runtime/server/controllers/chat.controller.d.ts +11 -0
  226. package/dist/{server → runtime/server}/controllers/chat.controller.js +23 -11
  227. package/dist/runtime/server/controllers/command-export.controller.d.ts +74 -0
  228. package/dist/runtime/server/controllers/command-export.controller.js +260 -0
  229. package/dist/runtime/server/controllers/command.controller.d.ts +15 -0
  230. package/dist/runtime/server/controllers/command.controller.js +100 -0
  231. package/dist/runtime/server/controllers/player-export.controller.d.ts +29 -0
  232. package/dist/runtime/server/controllers/player-export.controller.js +173 -0
  233. package/dist/runtime/server/controllers/principal-export.controller.d.ts +79 -0
  234. package/dist/runtime/server/controllers/principal-export.controller.js +296 -0
  235. package/dist/runtime/server/controllers/remote-command-execution.controller.d.ts +43 -0
  236. package/dist/runtime/server/controllers/remote-command-execution.controller.js +104 -0
  237. package/dist/runtime/server/controllers/session.controller.d.ts +11 -0
  238. package/dist/{server → runtime/server}/controllers/session.controller.js +15 -12
  239. package/dist/runtime/server/controllers/vehicle.controller.d.ts +55 -0
  240. package/dist/runtime/server/controllers/vehicle.controller.js +216 -0
  241. package/dist/runtime/server/core.d.ts +3 -0
  242. package/dist/runtime/server/core.js +11 -0
  243. package/dist/runtime/server/database/adapter.registry.d.ts +4 -0
  244. package/dist/runtime/server/database/adapter.registry.js +14 -0
  245. package/dist/{server → runtime/server}/database/database.contract.d.ts +1 -1
  246. package/dist/{server → runtime/server}/database/database.service.d.ts +3 -31
  247. package/dist/{server → runtime/server}/database/database.service.js +36 -50
  248. package/dist/runtime/server/database/index.d.ts +5 -0
  249. package/dist/runtime/server/database/index.js +25 -0
  250. package/dist/runtime/server/decorators/bind.d.ts +21 -0
  251. package/dist/runtime/server/decorators/bind.js +31 -0
  252. package/dist/runtime/server/decorators/command.d.ts +81 -0
  253. package/dist/runtime/server/decorators/command.js +32 -0
  254. package/dist/{server → runtime/server}/decorators/controller.d.ts +4 -3
  255. package/dist/runtime/server/decorators/controller.js +61 -0
  256. package/dist/runtime/server/decorators/export.d.ts +24 -0
  257. package/dist/runtime/server/decorators/export.js +32 -0
  258. package/dist/runtime/server/decorators/guard.d.ts +49 -0
  259. package/dist/{server → runtime/server}/decorators/guard.js +33 -32
  260. package/dist/{server → runtime/server}/decorators/index.d.ts +7 -4
  261. package/dist/{server → runtime/server}/decorators/index.js +8 -5
  262. package/dist/runtime/server/decorators/onFiveMEvent.d.ts +24 -0
  263. package/dist/runtime/server/decorators/onFiveMEvent.js +32 -0
  264. package/dist/runtime/server/decorators/onFrameworkEvent.d.ts +22 -0
  265. package/dist/{server → runtime/server}/decorators/onFrameworkEvent.js +9 -9
  266. package/dist/runtime/server/decorators/onNet.d.ts +62 -0
  267. package/dist/runtime/server/decorators/onNet.js +15 -0
  268. package/dist/runtime/server/decorators/onTick.d.ts +21 -0
  269. package/dist/runtime/server/decorators/onTick.js +29 -0
  270. package/dist/runtime/server/decorators/public.d.ts +26 -0
  271. package/dist/{server → runtime/server}/decorators/public.js +15 -16
  272. package/dist/{server → runtime/server}/decorators/requiresState.d.ts +29 -22
  273. package/dist/runtime/server/decorators/requiresState.js +73 -0
  274. package/dist/runtime/server/decorators/throttle.d.ts +56 -0
  275. package/dist/{server → runtime/server}/decorators/throttle.js +31 -19
  276. package/dist/runtime/server/decorators/utils.d.ts +54 -0
  277. package/dist/runtime/server/decorators/utils.js +60 -0
  278. package/dist/runtime/server/devmode/contracts/IDevModeBridge.d.ts +36 -0
  279. package/dist/runtime/server/devmode/contracts/IDevModeBridge.js +12 -0
  280. package/dist/runtime/server/devmode/contracts/IDevModeInspector.d.ts +52 -0
  281. package/dist/runtime/server/devmode/contracts/IDevModeInspector.js +12 -0
  282. package/dist/runtime/server/devmode/contracts/IDevModeInterceptor.d.ts +41 -0
  283. package/dist/runtime/server/devmode/contracts/IDevModeInterceptor.js +11 -0
  284. package/dist/runtime/server/devmode/contracts/index.d.ts +3 -0
  285. package/dist/runtime/server/devmode/contracts/index.js +9 -0
  286. package/dist/runtime/server/devmode/dev-mode.service.d.ts +110 -0
  287. package/dist/runtime/server/devmode/dev-mode.service.js +324 -0
  288. package/dist/runtime/server/devmode/event-interceptor.service.d.ts +80 -0
  289. package/dist/runtime/server/devmode/event-interceptor.service.js +232 -0
  290. package/dist/runtime/server/devmode/hot-reload.server.d.ts +74 -0
  291. package/dist/runtime/server/devmode/hot-reload.server.js +261 -0
  292. package/dist/runtime/server/devmode/index.d.ts +8 -0
  293. package/dist/runtime/server/devmode/index.js +32 -0
  294. package/dist/runtime/server/devmode/player-simulator.service.d.ts +66 -0
  295. package/dist/runtime/server/devmode/player-simulator.service.js +202 -0
  296. package/dist/runtime/server/devmode/state-inspector.service.d.ts +57 -0
  297. package/dist/runtime/server/devmode/state-inspector.service.js +183 -0
  298. package/dist/runtime/server/devmode/types.d.ts +161 -0
  299. package/dist/runtime/server/devmode/types.js +28 -0
  300. package/dist/runtime/server/entities/index.d.ts +2 -0
  301. package/dist/{server → runtime/server}/entities/index.js +1 -0
  302. package/dist/{server → runtime/server}/entities/player.d.ts +70 -3
  303. package/dist/{server → runtime/server}/entities/player.js +92 -14
  304. package/dist/runtime/server/entities/vehicle.d.ts +160 -0
  305. package/dist/runtime/server/entities/vehicle.js +261 -0
  306. package/dist/{server → runtime/server}/error-handler.d.ts +1 -1
  307. package/dist/{server → runtime/server}/error-handler.js +7 -8
  308. package/dist/runtime/server/helpers/command-validation.helper.d.ts +6 -0
  309. package/dist/runtime/server/helpers/command-validation.helper.js +72 -0
  310. package/dist/runtime/server/helpers/function-helper.d.ts +1 -0
  311. package/dist/runtime/server/helpers/function-helper.js +15 -0
  312. package/dist/{server → runtime/server}/helpers/resolve-method.d.ts +1 -1
  313. package/dist/runtime/server/helpers/resolve-method.js +28 -0
  314. package/dist/{server → runtime/server}/index.d.ts +8 -6
  315. package/dist/{server → runtime/server}/index.js +14 -10
  316. package/dist/runtime/server/runtime.d.ts +408 -0
  317. package/dist/runtime/server/runtime.js +234 -0
  318. package/dist/runtime/server/services/access-control.service.d.ts +59 -0
  319. package/dist/runtime/server/services/access-control.service.js +127 -0
  320. package/dist/runtime/server/services/appearance.service.d.ts +99 -0
  321. package/dist/runtime/server/services/appearance.service.js +307 -0
  322. package/dist/runtime/server/services/chat.service.d.ts +33 -0
  323. package/dist/{server → runtime/server}/services/chat.service.js +26 -0
  324. package/dist/{server → runtime/server}/services/config.service.js +1 -1
  325. package/dist/runtime/server/services/core/command.service.d.ts +49 -0
  326. package/dist/runtime/server/services/core/command.service.js +112 -0
  327. package/dist/{server/services → runtime/server/services/core}/player.service.d.ts +48 -22
  328. package/dist/{server/services → runtime/server/services/core}/player.service.js +98 -14
  329. package/dist/runtime/server/services/core/principal.service.d.ts +28 -0
  330. package/dist/runtime/server/services/core/principal.service.js +126 -0
  331. package/dist/runtime/server/services/core/vehicle-modification.service.d.ts +104 -0
  332. package/dist/runtime/server/services/core/vehicle-modification.service.js +330 -0
  333. package/dist/runtime/server/services/core/vehicle.service.d.ts +128 -0
  334. package/dist/runtime/server/services/core/vehicle.service.js +391 -0
  335. package/dist/runtime/server/services/default/default-net-event-security-observer.d.ts +15 -0
  336. package/dist/runtime/server/services/default/default-net-event-security-observer.js +28 -0
  337. package/dist/runtime/server/services/default/default-security.handler.d.ts +19 -0
  338. package/dist/{server → runtime/server}/services/default/default-security.handler.js +15 -2
  339. package/dist/{server → runtime/server}/services/http/http.service.js +5 -5
  340. package/dist/runtime/server/services/index.d.ts +16 -0
  341. package/dist/runtime/server/services/index.js +39 -0
  342. package/dist/{server → runtime/server}/services/parallel/index.d.ts +2 -4
  343. package/dist/{server → runtime/server}/services/parallel/index.js +13 -15
  344. package/dist/{server → runtime/server}/services/parallel/parallel-compute.service.d.ts +1 -1
  345. package/dist/{server → runtime/server}/services/parallel/parallel-compute.service.js +2 -1
  346. package/dist/{server → runtime/server}/services/parallel/worker-pool.d.ts +1 -1
  347. package/dist/{server → runtime/server}/services/parallel/worker.d.ts +1 -1
  348. package/dist/{server → runtime/server}/services/persistence.service.d.ts +1 -1
  349. package/dist/{server → runtime/server}/services/persistence.service.js +13 -9
  350. package/dist/runtime/server/services/ports/command-execution.port.d.ts +41 -0
  351. package/dist/runtime/server/services/ports/command-execution.port.js +15 -0
  352. package/dist/runtime/server/services/ports/player-directory.port.d.ts +107 -0
  353. package/dist/runtime/server/services/ports/player-directory.port.js +23 -0
  354. package/dist/runtime/server/services/ports/player-session-lifecycle.port.d.ts +49 -0
  355. package/dist/runtime/server/services/ports/player-session-lifecycle.port.js +16 -0
  356. package/dist/runtime/server/services/ports/principal.port.d.ts +149 -0
  357. package/dist/runtime/server/services/ports/principal.port.js +32 -0
  358. package/dist/runtime/server/services/rate-limiter.service.d.ts +23 -0
  359. package/dist/{server → runtime/server}/services/rate-limiter.service.js +18 -0
  360. package/dist/runtime/server/services/remote/remote-command.service.d.ts +63 -0
  361. package/dist/runtime/server/services/remote/remote-command.service.js +139 -0
  362. package/dist/runtime/server/services/remote/remote-player.service.d.ts +62 -0
  363. package/dist/runtime/server/services/remote/remote-player.service.js +191 -0
  364. package/dist/runtime/server/services/remote/remote-principal.provider.d.ts +55 -0
  365. package/dist/runtime/server/services/remote/remote-principal.provider.js +130 -0
  366. package/dist/runtime/server/services/remote/remote-principal.service.d.ts +33 -0
  367. package/dist/runtime/server/services/remote/remote-principal.service.js +99 -0
  368. package/dist/runtime/server/services/remote/server-bridge.d.ts +34 -0
  369. package/dist/runtime/server/services/remote/server-bridge.js +94 -0
  370. package/dist/runtime/server/services/services.register.d.ts +14 -0
  371. package/dist/runtime/server/services/services.register.js +98 -0
  372. package/dist/runtime/server/services/types/linked-id.d.ts +6 -0
  373. package/dist/runtime/server/services/types/player-session.object.d.ts +11 -0
  374. package/dist/runtime/server/services/vehicle-modification.service.d.ts +94 -0
  375. package/dist/runtime/server/services/vehicle-modification.service.js +310 -0
  376. package/dist/runtime/server/services/vehicle.service.d.ts +138 -0
  377. package/dist/runtime/server/services/vehicle.service.js +361 -0
  378. package/dist/runtime/server/setup.d.ts +10 -0
  379. package/dist/runtime/server/setup.js +33 -0
  380. package/dist/{server → runtime/server}/system/metadata-server.keys.d.ts +2 -0
  381. package/dist/{server → runtime/server}/system/metadata-server.keys.js +2 -0
  382. package/dist/runtime/server/system/processors/command.processor.d.ts +16 -0
  383. package/dist/runtime/server/system/processors/command.processor.js +54 -0
  384. package/dist/{server → runtime/server}/system/processors/coreEvent.processor.d.ts +1 -1
  385. package/dist/{server → runtime/server}/system/processors/coreEvent.processor.js +3 -3
  386. package/dist/runtime/server/system/processors/export.processor.d.ts +10 -0
  387. package/dist/{server → runtime/server}/system/processors/export.processor.js +15 -5
  388. package/dist/runtime/server/system/processors/fivemEvent.processor.d.ts +10 -0
  389. package/dist/{server → runtime/server}/system/processors/fivemEvent.processor.js +15 -5
  390. package/dist/runtime/server/system/processors/netEvent.processor.d.ts +23 -0
  391. package/dist/runtime/server/system/processors/netEvent.processor.js +240 -0
  392. package/dist/runtime/server/system/processors/tick.processor.d.ts +8 -0
  393. package/dist/{server → runtime/server}/system/processors/tick.processor.js +14 -4
  394. package/dist/runtime/server/system/processors.register.d.ts +2 -0
  395. package/dist/runtime/server/system/processors.register.js +37 -0
  396. package/dist/{server → runtime/server}/system/schema-generator.d.ts +1 -1
  397. package/dist/{server → runtime/server}/system/schema-generator.js +17 -8
  398. package/dist/{server/templates/admin → runtime/server/templates}/admin.controller-template.d.ts +1 -1
  399. package/dist/runtime/server/templates/index.d.ts +1 -0
  400. package/dist/runtime/server/templates/index.js +17 -0
  401. package/dist/runtime/server/types/core-exports.d.ts +285 -0
  402. package/dist/runtime/server/types/core-exports.js +2 -0
  403. package/dist/runtime/server/types/index.d.ts +4 -0
  404. package/dist/runtime/server/types/index.js +20 -0
  405. package/dist/runtime/server/types/security.types.js +2 -0
  406. package/dist/runtime/server/types/vehicle.types.d.ts +152 -0
  407. package/dist/runtime/server/types/vehicle.types.js +2 -0
  408. package/package.json +30 -30
  409. package/dist/client/client-bootstrap.d.ts +0 -1
  410. package/dist/client/client-bootstrap.js +0 -50
  411. package/dist/client/client-core.d.ts +0 -1
  412. package/dist/client/client-core.js +0 -7
  413. package/dist/client/decorators/controller.d.ts +0 -3
  414. package/dist/client/decorators/controller.js +0 -14
  415. package/dist/client/decorators/export.d.ts +0 -7
  416. package/dist/client/decorators/export.js +0 -15
  417. package/dist/client/decorators/interval.d.ts +0 -7
  418. package/dist/client/decorators/interval.js +0 -15
  419. package/dist/client/decorators/key.d.ts +0 -2
  420. package/dist/client/decorators/key.js +0 -10
  421. package/dist/client/decorators/localEvent.d.ts +0 -7
  422. package/dist/client/decorators/localEvent.js +0 -15
  423. package/dist/client/decorators/nui.d.ts +0 -1
  424. package/dist/client/decorators/nui.js +0 -9
  425. package/dist/client/decorators/onNet.d.ts +0 -1
  426. package/dist/client/decorators/onNet.js +0 -9
  427. package/dist/client/decorators/resourceLifecycle.d.ts +0 -11
  428. package/dist/client/decorators/resourceLifecycle.js +0 -24
  429. package/dist/client/decorators/tick.d.ts +0 -1
  430. package/dist/client/decorators/tick.js +0 -9
  431. package/dist/client/interfaces/appearance.interface.d.ts +0 -19
  432. package/dist/client/services/appearance.service.d.ts +0 -6
  433. package/dist/client/services/appearance.service.js +0 -89
  434. package/dist/server/bootstrap.js +0 -57
  435. package/dist/server/bus/core-event-bus.d.ts +0 -6
  436. package/dist/server/controllers/chat.controller.d.ts +0 -10
  437. package/dist/server/controllers/command.controller.d.ts +0 -7
  438. package/dist/server/controllers/command.controller.js +0 -47
  439. package/dist/server/controllers/session.controller.d.ts +0 -9
  440. package/dist/server/core.d.ts +0 -1
  441. package/dist/server/core.js +0 -7
  442. package/dist/server/database/index.d.ts +0 -53
  443. package/dist/server/database/index.js +0 -70
  444. package/dist/server/decorators/bind.d.ts +0 -2
  445. package/dist/server/decorators/bind.js +0 -15
  446. package/dist/server/decorators/command.d.ts +0 -49
  447. package/dist/server/decorators/command.js +0 -23
  448. package/dist/server/decorators/controller.js +0 -36
  449. package/dist/server/decorators/export.d.ts +0 -39
  450. package/dist/server/decorators/export.js +0 -47
  451. package/dist/server/decorators/guard.d.ts +0 -56
  452. package/dist/server/decorators/onFiveMEvent.d.ts +0 -6
  453. package/dist/server/decorators/onFiveMEvent.js +0 -14
  454. package/dist/server/decorators/onFrameworkEvent.d.ts +0 -22
  455. package/dist/server/decorators/onNet.d.ts +0 -58
  456. package/dist/server/decorators/onNet.js +0 -57
  457. package/dist/server/decorators/onTick.d.ts +0 -32
  458. package/dist/server/decorators/onTick.js +0 -40
  459. package/dist/server/decorators/public.d.ts +0 -27
  460. package/dist/server/decorators/requiresState.js +0 -63
  461. package/dist/server/decorators/throttle.d.ts +0 -48
  462. package/dist/server/decorators/utils.d.ts +0 -57
  463. package/dist/server/decorators/utils.js +0 -63
  464. package/dist/server/entities/index.d.ts +0 -1
  465. package/dist/server/helpers/resolve-method.js +0 -18
  466. package/dist/server/loaders/exports.loader.d.ts +0 -0
  467. package/dist/server/loaders/exports.loader.js +0 -23
  468. package/dist/server/loaders/playerSession.loader.d.ts +0 -1
  469. package/dist/server/loaders/playerSession.loader.js +0 -51
  470. package/dist/server/services/access-control.service.d.ts +0 -56
  471. package/dist/server/services/access-control.service.js +0 -99
  472. package/dist/server/services/chat.service.d.ts +0 -7
  473. package/dist/server/services/command.service.d.ts +0 -15
  474. package/dist/server/services/command.service.js +0 -77
  475. package/dist/server/services/default/default-security.handler.d.ts +0 -6
  476. package/dist/server/services/index.d.ts +0 -10
  477. package/dist/server/services/index.js +0 -26
  478. package/dist/server/services/rate-limiter.service.d.ts +0 -5
  479. package/dist/server/services/registers.d.ts +0 -1
  480. package/dist/server/services/registers.js +0 -18
  481. package/dist/server/setup.d.ts +0 -9
  482. package/dist/server/setup.js +0 -28
  483. package/dist/server/system/processors/command.processor.d.ts +0 -9
  484. package/dist/server/system/processors/export.processor.d.ts +0 -7
  485. package/dist/server/system/processors/fivemEvent.processor.d.ts +0 -7
  486. package/dist/server/system/processors/netEvent.processor.d.ts +0 -11
  487. package/dist/server/system/processors/netEvent.processor.js +0 -103
  488. package/dist/server/system/processors/tick.processor.d.ts +0 -5
  489. package/dist/server/system/processors.register.d.ts +0 -1
  490. package/dist/server/system/processors.register.js +0 -23
  491. package/dist/server/templates/index.d.ts +0 -8
  492. package/dist/server/templates/persistence/index.d.ts +0 -30
  493. package/dist/server/templates/persistence/index.js +0 -34
  494. package/dist/shared/index.d.ts +0 -1
  495. package/dist/shared/logger/transports/index.d.ts +0 -3
  496. package/dist/shared/logger/transports/index.js +0 -19
  497. package/dist/utils/errors.d.ts +0 -14
  498. package/dist/{system → kernel/di}/class-constructor.d.ts +0 -0
  499. package/dist/{system → kernel/di}/class-constructor.js +0 -0
  500. package/dist/{server → kernel/di}/container.d.ts +0 -0
  501. package/dist/{server → kernel/di}/container.js +0 -0
  502. package/dist/{system → kernel/di}/decorator-processor.d.ts +0 -0
  503. package/dist/{system → kernel/di}/decorator-processor.js +0 -0
  504. package/dist/{system → kernel/di}/metadata.scanner.js +0 -0
  505. package/dist/{shared → kernel/shared}/logger/logger.config.js +0 -0
  506. package/dist/{shared → kernel/shared}/logger/logger.service.js +0 -0
  507. package/dist/{shared → kernel/shared}/logger/logger.types.d.ts +0 -0
  508. package/dist/{shared → kernel/shared}/logger/logger.types.js +0 -0
  509. package/dist/{shared → kernel/shared}/logger/transports/transport.interface.js +0 -0
  510. package/dist/{utils → kernel/utils}/result.js +0 -0
  511. package/dist/{utils → kernel/utils}/rgb.d.ts +0 -0
  512. package/dist/{utils → kernel/utils}/rgb.js +0 -0
  513. package/dist/{utils → kernel/utils}/vector3.d.ts +0 -0
  514. package/dist/{utils → kernel/utils}/vector3.js +0 -0
  515. package/dist/{client → runtime/client}/client-container.d.ts +0 -0
  516. package/dist/{client → runtime/client}/client-container.js +0 -0
  517. package/dist/{client → runtime/client}/controllers/spawner.controller.js +0 -0
  518. package/dist/{client → runtime/client}/decorators/gameEvent.js +0 -0
  519. package/dist/{client → runtime/client}/decorators/index.d.ts +5 -5
  520. package/dist/{client → runtime/client}/decorators/index.js +5 -5
  521. package/dist/{client → runtime/client}/player/player.loader.d.ts +0 -0
  522. package/dist/{client → runtime/client}/services/blip.service.js +0 -0
  523. package/dist/{client → runtime/client}/services/marker.service.js +0 -0
  524. package/dist/{client → runtime/client}/services/notification.service.d.ts +0 -0
  525. package/dist/{client → runtime/client}/services/notification.service.js +0 -0
  526. package/dist/{client → runtime/client}/services/progress.service.d.ts +0 -0
  527. package/dist/{client → runtime/client}/services/progress.service.js +0 -0
  528. package/dist/{client → runtime/client}/services/streaming.service.d.ts +0 -0
  529. package/dist/{client → runtime/client}/services/streaming.service.js +0 -0
  530. package/dist/{client → runtime/client}/services/textui.service.js +0 -0
  531. package/dist/{client → runtime/client}/system/metadata-client.keys.d.ts +0 -0
  532. package/dist/{client → runtime/client}/system/metadata-client.keys.js +0 -0
  533. package/dist/{client → runtime/client}/system/processors/key.processor.js +0 -0
  534. package/dist/{client → runtime/client}/system/processors.register.d.ts +0 -0
  535. package/dist/{client → runtime/client}/system/processors.register.js +6 -6
  536. /package/dist/{client → runtime/client}/types/game-events.d.ts +0 -0
  537. /package/dist/{client → runtime/client}/types/index.d.ts +0 -0
  538. /package/dist/{client → runtime/client}/types/index.js +0 -0
  539. /package/dist/{client → runtime/client}/ui-bridge.d.ts +0 -0
  540. /package/dist/{server → runtime/server}/configs/api.config.js +0 -0
  541. /package/dist/{server → runtime/server}/configs/config.base.d.ts +0 -0
  542. /package/dist/{server → runtime/server}/configs/config.base.js +0 -0
  543. /package/dist/{server → runtime/server}/configs/index.d.ts +0 -0
  544. /package/dist/{server → runtime/server}/configs/index.js +0 -0
  545. /package/dist/{server/templates/auth → runtime/server/contracts}/auth-provider.contract.js +0 -0
  546. /package/dist/{server/templates/persistence → runtime/server/contracts}/player-persistence.contract.js +0 -0
  547. /package/dist/{server/templates → runtime/server/contracts}/repository/repository.types.d.ts +0 -0
  548. /package/dist/{server/templates → runtime/server/contracts}/repository/repository.types.js +0 -0
  549. /package/dist/{server/templates → runtime/server/contracts}/security/permission.types.d.ts +0 -0
  550. /package/dist/{server/templates → runtime/server/contracts}/security/permission.types.js +0 -0
  551. /package/dist/{server/templates → runtime/server/contracts}/security/principal-provider.contract.js +0 -0
  552. /package/dist/{server/templates → runtime/server/contracts}/security/security-handler.contract.js +0 -0
  553. /package/dist/{server → runtime/server}/database/database.contract.js +0 -0
  554. /package/dist/{server → runtime/server}/database/types.d.ts +0 -0
  555. /package/dist/{server → runtime/server}/database/types.js +0 -0
  556. /package/dist/{server → runtime/server}/database.d.ts +0 -0
  557. /package/dist/{server → runtime/server}/database.js +0 -0
  558. /package/dist/{server → runtime/server}/services/config.service.d.ts +0 -0
  559. /package/dist/{server → runtime/server}/services/http/http.service.d.ts +0 -0
  560. /package/dist/{server → runtime/server}/services/parallel/types.d.ts +0 -0
  561. /package/dist/{server → runtime/server}/services/parallel/types.js +0 -0
  562. /package/dist/{server → runtime/server}/services/parallel/worker-pool.js +0 -0
  563. /package/dist/{server → runtime/server}/services/parallel/worker.js +0 -0
  564. /package/dist/{client/interfaces/appearance.interface.js → runtime/server/services/types/linked-id.js} +0 -0
  565. /package/dist/{server/templates/admin/admin.controller-template.js → runtime/server/services/types/player-session.object.js} +0 -0
  566. /package/dist/{server/types/core-events.js → runtime/server/templates/admin.controller-template.js} +0 -0
  567. /package/dist/{server → runtime/server}/types/core-events.d.ts +0 -0
  568. /package/dist/{server/types/security.types.js → runtime/server/types/core-events.js} +0 -0
  569. /package/dist/{server → runtime/server}/types/security.types.d.ts +0 -0
@@ -1,12 +1,4 @@
1
1
  "use strict";
2
- /**
3
- * Game Events - Native GTA V internal events captured by FiveM
4
- *
5
- * Documentation: https://docs.fivem.net/docs/game-references/game-events/
6
- *
7
- * These are low-level events from the RAGE engine. The arguments are
8
- * passed as arrays from the native layer.
9
- */
10
2
  Object.defineProperty(exports, "__esModule", { value: true });
11
3
  exports.GameEventParsers = void 0;
12
4
  // ─────────────────────────────────────────────────────────────────────────────
@@ -8,7 +8,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.NUI = exports.NuiBridge = void 0;
10
10
  const tsyringe_1 = require("tsyringe");
11
- const logger_1 = require("../shared/logger");
11
+ const logger_1 = require("../../kernel/shared/logger");
12
12
  const nuiLogger = logger_1.coreLogger.child('NUI', logger_1.LogDomain.CLIENT);
13
13
  /**
14
14
  * Type-safe NUI (Native UI) Bridge for client-server communication.
@@ -0,0 +1,2 @@
1
+ export * as Client from './client';
2
+ export * as Server from './server';
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ // Runtime - System execution
3
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = { enumerable: true, get: function() { return m[k]; } };
8
+ }
9
+ Object.defineProperty(o, k2, desc);
10
+ }) : (function(o, m, k, k2) {
11
+ if (k2 === undefined) k2 = k;
12
+ o[k2] = m[k];
13
+ }));
14
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
15
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
16
+ }) : function(o, v) {
17
+ o["default"] = v;
18
+ });
19
+ var __importStar = (this && this.__importStar) || (function () {
20
+ var ownKeys = function(o) {
21
+ ownKeys = Object.getOwnPropertyNames || function (o) {
22
+ var ar = [];
23
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
24
+ return ar;
25
+ };
26
+ return ownKeys(o);
27
+ };
28
+ return function (mod) {
29
+ if (mod && mod.__esModule) return mod;
30
+ var result = {};
31
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
32
+ __setModuleDefault(result, mod);
33
+ return result;
34
+ };
35
+ })();
36
+ Object.defineProperty(exports, "__esModule", { value: true });
37
+ exports.Server = exports.Client = void 0;
38
+ exports.Client = __importStar(require("./client"));
39
+ exports.Server = __importStar(require("./server"));
@@ -1,3 +1,4 @@
1
+ import { type ServerRuntimeOptions } from './runtime';
1
2
  /**
2
3
  * Bootstraps the OpenCore Server Application Context.
3
4
  *
@@ -13,4 +14,4 @@
13
14
  *
14
15
  * @returns A promise that resolves when the Core is fully initialized and ready to process events.
15
16
  */
16
- export declare function initServer(): Promise<void>;
17
+ export declare function initServer(options: ServerRuntimeOptions): Promise<void>;
@@ -0,0 +1,234 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.initServer = initServer;
37
+ const register_capabilities_1 = require("../../adapters/register-capabilities");
38
+ const index_1 = require("../../kernel/di/index");
39
+ const logger_1 = require("../../kernel/shared/logger");
40
+ const index_2 = require("./contracts/index");
41
+ const bootstrap_validation_1 = require("./bootstrap.validation");
42
+ const controller_1 = require("./decorators/controller");
43
+ const runtime_1 = require("./runtime");
44
+ const services_register_1 = require("./services/services.register");
45
+ const processors_register_1 = require("./system/processors.register");
46
+ function checkProviders(ctx) {
47
+ if (ctx.mode === 'RESOURCE')
48
+ return;
49
+ if (ctx.features.principal.enabled && ctx.features.principal.required) {
50
+ if (!index_1.di.isRegistered(index_2.PrincipalProviderContract)) {
51
+ const errorMsg = 'No Principal Provider configured. ' +
52
+ "Please call 'Server.setPrincipalProvider(YourProvider)' before init(). This is required for authorization.";
53
+ logger_1.loggers.bootstrap.fatal(errorMsg);
54
+ throw new Error(`[OpenCore] CRITICAL: ${errorMsg}`);
55
+ }
56
+ }
57
+ if (ctx.features.auth.enabled && ctx.features.auth.required) {
58
+ if (!index_1.di.isRegistered(index_2.AuthProviderContract)) {
59
+ const errorMsg = 'No Authentication Provider configured. ' +
60
+ "Please call 'Server.setAuthProvider(YourProvider)' before init(). This is required for authentication.";
61
+ logger_1.loggers.bootstrap.fatal(errorMsg);
62
+ throw new Error(`[OpenCore] CRITICAL: ${errorMsg}`);
63
+ }
64
+ }
65
+ }
66
+ async function loadFrameworkControllers(ctx) {
67
+ if (ctx.features.commands.enabled) {
68
+ if (ctx.mode === 'RESOURCE') {
69
+ // RESOURCE mode: only load the controller that receives delegated commands from CORE
70
+ await Promise.resolve().then(() => __importStar(require('./controllers/remote-command-execution.controller')));
71
+ }
72
+ else {
73
+ // CORE/STANDALONE mode: load the unified command controller
74
+ // This handles both network events and exports in a single controller
75
+ await Promise.resolve().then(() => __importStar(require('./controllers/command-export.controller')));
76
+ }
77
+ }
78
+ if (ctx.features.chat.enabled && ctx.features.chat.export && ctx.features.exports.enabled) {
79
+ if (ctx.mode !== 'RESOURCE') {
80
+ await Promise.resolve().then(() => __importStar(require('./controllers/chat.controller')));
81
+ }
82
+ }
83
+ if (ctx.features.sessionLifecycle.enabled && ctx.mode !== 'RESOURCE') {
84
+ await Promise.resolve().then(() => __importStar(require('./controllers/session.controller')));
85
+ }
86
+ if (ctx.features.players.enabled && ctx.features.players.export && ctx.features.exports.enabled) {
87
+ await Promise.resolve().then(() => __importStar(require('./controllers/player-export.controller')));
88
+ }
89
+ if (ctx.features.principal.enabled &&
90
+ ctx.features.principal.export &&
91
+ ctx.features.exports.enabled) {
92
+ await Promise.resolve().then(() => __importStar(require('./controllers/principal-export.controller')));
93
+ }
94
+ }
95
+ /**
96
+ * Bootstraps the OpenCore Server Application Context.
97
+ *
98
+ * This is the primary entry point for the server-side framework. It orchestrates the
99
+ * initialization of the Dependency Injection (DI) container and establishes the
100
+ * bridge between the low-level FiveM runtime and the OpenCore architecture.
101
+ *
102
+ * **Initialization Lifecycle:**
103
+ * 1. **Infrastructure Registration:** Registers core infrastructure services (`PlayerService`, `CommandService`, `HttpService`) as Singletons in the IoC container.
104
+ * 2. **Reflection & Discovery:** Scans all decorated classes (Controllers, Services) to extract metadata defined by `@Command`, `@OnNet`, etc.
105
+ * 3. **Runtime Binding:** Binds the discovered metadata to actual FiveM natives (e.g., `RegisterCommand`, `onNet`, `exports`).
106
+ * 4. **Session Management:** Activates the player session tracking system.
107
+ *
108
+ * @returns A promise that resolves when the Core is fully initialized and ready to process events.
109
+ */
110
+ async function initServer(options) {
111
+ var _a;
112
+ (0, runtime_1.validateRuntimeOptions)(options);
113
+ (0, runtime_1.setRuntimeContext)(options);
114
+ const ctx = options;
115
+ logger_1.loggers.bootstrap.info('Initializing OpenCore Server...');
116
+ logger_1.loggers.bootstrap.debug('Runtime configuration', {
117
+ mode: ctx.mode,
118
+ scope: (0, runtime_1.getFrameworkModeScope)(ctx.mode),
119
+ });
120
+ await (0, register_capabilities_1.registerServerCapabilities)();
121
+ (0, services_register_1.registerServicesServer)(ctx);
122
+ logger_1.loggers.bootstrap.debug('Core services registered');
123
+ (0, processors_register_1.registerSystemServer)(ctx);
124
+ logger_1.loggers.bootstrap.debug('System processors registered');
125
+ checkProviders(ctx);
126
+ // In RESOURCE mode, verify CORE exports are available before loading controllers
127
+ if (ctx.mode === 'RESOURCE') {
128
+ const needsCoreExports = ctx.features.players.provider === 'core' ||
129
+ ctx.features.commands.provider === 'core' ||
130
+ ctx.features.principal.provider === 'core' ||
131
+ ctx.features.auth.provider === 'core';
132
+ if (needsCoreExports) {
133
+ const { coreResourceName } = ctx;
134
+ logger_1.loggers.bootstrap.debug(`Verifying CORE exports availability`, {
135
+ coreResourceName,
136
+ globalExportsKeys: Object.keys(globalThis.exports || {}),
137
+ });
138
+ // Build list of required exports
139
+ const requiredExports = [];
140
+ if (ctx.features.commands.provider === 'core') {
141
+ requiredExports.push('registerCommand', 'executeCommand', 'getAllCommands');
142
+ }
143
+ if (ctx.features.players.provider === 'core') {
144
+ requiredExports.push('getPlayerId', 'getPlayerData', 'getAllPlayersData', 'getPlayerByAccountId', 'getPlayerCount', 'isPlayerOnline', 'getPlayerMeta', 'setPlayerMeta', 'getPlayerStates', 'hasPlayerState', 'addPlayerState', 'removePlayerState');
145
+ }
146
+ if (ctx.features.principal.provider === 'core') {
147
+ requiredExports.push('getPrincipal', 'getPrincipalByAccountId', 'refreshPrincipal', 'hasPermission', 'hasRank', 'hasAnyPermission', 'hasAllPermissions', 'getPermissions', 'getRank', 'getPrincipalName', 'getPrincipalMeta');
148
+ }
149
+ logger_1.loggers.bootstrap.debug(`Checking CORE exports`, {
150
+ coreResourceName,
151
+ requiredExports,
152
+ });
153
+ // Access exports directly using FiveM's global exports object
154
+ const globalExports = globalThis.exports;
155
+ if (!globalExports) {
156
+ throw new Error(`[OpenCore] FiveM 'exports' global not found. This should never happen in a FiveM environment.`);
157
+ }
158
+ const coreExports = globalExports[coreResourceName];
159
+ // Check each required export directly (can't use Object.keys on FiveM exports proxy)
160
+ const missingExports = [];
161
+ for (const exportName of requiredExports) {
162
+ try {
163
+ const exportValue = coreExports === null || coreExports === void 0 ? void 0 : coreExports[exportName];
164
+ if (typeof exportValue !== 'function') {
165
+ missingExports.push(exportName);
166
+ logger_1.loggers.bootstrap.warn(`Export '${exportName}' is not a function`, {
167
+ exportName,
168
+ type: typeof exportValue,
169
+ value: exportValue,
170
+ });
171
+ }
172
+ }
173
+ catch (error) {
174
+ missingExports.push(exportName);
175
+ logger_1.loggers.bootstrap.warn(`Failed to access export '${exportName}'`, {
176
+ exportName,
177
+ error: error instanceof Error ? error.message : String(error),
178
+ });
179
+ }
180
+ }
181
+ if (missingExports.length > 0) {
182
+ const errorMsg = `CORE resource '${coreResourceName}' is missing ${missingExports.length} required exports: ${missingExports.join(', ')}\n` +
183
+ `\n` +
184
+ `This usually means:\n` +
185
+ ` 1. The CORE resource failed to initialize properly\n` +
186
+ ` 2. The CORE resource doesn't have the 'exports' feature enabled\n` +
187
+ ` 3. The CORE resource doesn't have the required features enabled (commands: ${ctx.features.commands.provider === 'core'})\n` +
188
+ `\n` +
189
+ `Verify in '${coreResourceName}/src/server/server.ts':\n` +
190
+ ` - mode: 'CORE'\n` +
191
+ ` - features.exports.enabled: true\n` +
192
+ ` - features.commands.enabled: true (if using commands)`;
193
+ logger_1.loggers.bootstrap.fatal(errorMsg);
194
+ throw new Error(`[OpenCore] ${errorMsg}`);
195
+ }
196
+ }
197
+ }
198
+ await loadFrameworkControllers(ctx);
199
+ if (ctx.features.database.enabled) {
200
+ (0, bootstrap_validation_1.registerDefaultBootstrapValidators)();
201
+ await (0, bootstrap_validation_1.runBootstrapValidatorsOrThrow)();
202
+ }
203
+ const scanner = index_1.di.resolve(index_1.MetadataScanner);
204
+ scanner.scan((0, controller_1.getServerControllerRegistry)());
205
+ // Initialize DevMode if enabled
206
+ if ((_a = ctx.devMode) === null || _a === void 0 ? void 0 : _a.enabled) {
207
+ await initDevMode(ctx.devMode);
208
+ }
209
+ logger_1.loggers.bootstrap.info('OpenCore Server initialized successfully');
210
+ }
211
+ /**
212
+ * Initializes the DevMode subsystem.
213
+ * This is loaded dynamically to avoid bundling dev tools in production.
214
+ */
215
+ async function initDevMode(config) {
216
+ const { DevModeService } = await Promise.resolve().then(() => __importStar(require('./devmode/dev-mode.service')));
217
+ const { EventInterceptorService } = await Promise.resolve().then(() => __importStar(require('./devmode/event-interceptor.service')));
218
+ const { StateInspectorService } = await Promise.resolve().then(() => __importStar(require('./devmode/state-inspector.service')));
219
+ const { PlayerSimulatorService } = await Promise.resolve().then(() => __importStar(require('./devmode/player-simulator.service')));
220
+ // Register DevMode services
221
+ index_1.di.registerSingleton(EventInterceptorService, EventInterceptorService);
222
+ index_1.di.registerSingleton(StateInspectorService, StateInspectorService);
223
+ index_1.di.registerSingleton(PlayerSimulatorService, PlayerSimulatorService);
224
+ index_1.di.registerSingleton(DevModeService, DevModeService);
225
+ // Enable DevMode
226
+ const devModeService = index_1.di.resolve(DevModeService);
227
+ await devModeService.enable({
228
+ enabled: true,
229
+ hotReload: config.hotReload,
230
+ bridge: config.bridge,
231
+ interceptor: config.interceptor,
232
+ simulator: config.simulator,
233
+ });
234
+ }
@@ -0,0 +1,12 @@
1
+ export type BootstrapValidator = () => string[] | Promise<string[]>;
2
+ /**
3
+ * Register a bootstrap validator.
4
+ * This is only used for cases of custom validators or resources that require validation,
5
+ * like Driver resources.
6
+ *
7
+ * @param name - The name of the validator.
8
+ * @param validator - The validator function.
9
+ */
10
+ export declare function registerBootstrapValidator(name: string, validator: BootstrapValidator): void;
11
+ export declare function runBootstrapValidatorsOrThrow(): Promise<void>;
12
+ export declare function registerDefaultBootstrapValidators(): void;
@@ -0,0 +1,102 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.registerBootstrapValidator = registerBootstrapValidator;
4
+ exports.runBootstrapValidatorsOrThrow = runBootstrapValidatorsOrThrow;
5
+ exports.registerDefaultBootstrapValidators = registerDefaultBootstrapValidators;
6
+ const zod_1 = require("zod");
7
+ const logger_1 = require("../../kernel/shared/logger");
8
+ const validators = new Map();
9
+ /**
10
+ * Register a bootstrap validator.
11
+ * This is only used for cases of custom validators or resources that require validation,
12
+ * like Driver resources.
13
+ *
14
+ * @param name - The name of the validator.
15
+ * @param validator - The validator function.
16
+ */
17
+ function registerBootstrapValidator(name, validator) {
18
+ if (validators.has(name)) {
19
+ throw new Error(`[OpenCore] Bootstrap validator '${name}' is already registered`);
20
+ }
21
+ validators.set(name, validator);
22
+ }
23
+ async function runBootstrapValidatorsOrThrow() {
24
+ const allErrors = [];
25
+ for (const [name, validator] of validators.entries()) {
26
+ const errors = await validator();
27
+ for (const err of errors)
28
+ allErrors.push(`[${name}] ${err}`);
29
+ }
30
+ if (allErrors.length === 0)
31
+ return;
32
+ const message = ['Invalid configuration detected during bootstrap:', ...allErrors].join('\n');
33
+ logger_1.loggers.bootstrap.fatal(message);
34
+ throw new Error(`[OpenCore] CRITICAL: ${message}`);
35
+ }
36
+ function getBooleanConvar(name, defaultValue = false) {
37
+ const raw = GetConvar(name, defaultValue ? 'true' : 'false')
38
+ .toLowerCase()
39
+ .trim();
40
+ return raw === 'true' || raw === '1' || raw === 'yes' || raw === 'y';
41
+ }
42
+ function getOptionalStringConvar(name) {
43
+ const raw = GetConvar(name, '').trim();
44
+ return raw.length > 0 ? raw : undefined;
45
+ }
46
+ function zodIssuesToLines(prefix, error) {
47
+ return error.issues.map((i) => {
48
+ const path = i.path.length ? `${prefix}.${i.path.join('.')}` : prefix;
49
+ return `${path}: ${i.message}`;
50
+ });
51
+ }
52
+ const PersistenceSchema = zod_1.z
53
+ .object({
54
+ enabled: zod_1.z.boolean(),
55
+ adapter: zod_1.z.string().min(1).optional(),
56
+ resourceName: zod_1.z.string().min(1).optional(),
57
+ })
58
+ .superRefine((val, ctx) => {
59
+ if (!val.enabled)
60
+ return;
61
+ if (!val.adapter) {
62
+ ctx.addIssue({
63
+ code: 'custom',
64
+ path: ['adapter'],
65
+ message: 'Required when opencore_persistence_enabled=true (set opencore_db_adapter)',
66
+ });
67
+ return;
68
+ }
69
+ if (val.adapter === 'resource' && !val.resourceName) {
70
+ ctx.addIssue({
71
+ code: 'custom',
72
+ path: ['resourceName'],
73
+ message: 'Required when opencore_db_adapter=resource (set opencore_db_resource)',
74
+ });
75
+ }
76
+ });
77
+ function validatePersistence() {
78
+ const enabled = getBooleanConvar('opencore_persistence_enabled', false);
79
+ if (!enabled)
80
+ return [];
81
+ const adapter = getOptionalStringConvar('opencore_db_adapter');
82
+ const resourceName = getOptionalStringConvar('opencore_db_resource');
83
+ const parsed = PersistenceSchema.safeParse({ enabled, adapter, resourceName });
84
+ if (!parsed.success)
85
+ return zodIssuesToLines('persistence', parsed.error);
86
+ if (adapter === 'resource') {
87
+ const db = exports[resourceName];
88
+ if (!db) {
89
+ return [
90
+ `persistence.resource: Database resource '${resourceName}' is not available. Start it before this resource.`,
91
+ ];
92
+ }
93
+ }
94
+ return [];
95
+ }
96
+ let defaultsRegistered = false;
97
+ function registerDefaultBootstrapValidators() {
98
+ if (defaultsRegistered)
99
+ return;
100
+ registerBootstrapValidator('persistence', validatePersistence);
101
+ defaultsRegistered = true;
102
+ }
@@ -0,0 +1,6 @@
1
+ import { CoreEventMap } from '../types/core-events';
2
+ type CoreEventName = keyof CoreEventMap;
3
+ type CoreEventHandler<E extends CoreEventName> = (payload: CoreEventMap[E]) => void;
4
+ export declare function onFrameworkEvent<E extends CoreEventName>(event: E, handler: CoreEventHandler<E>): () => void;
5
+ export declare function emitFrameworkEvent<E extends CoreEventName>(event: E, payload: CoreEventMap[E]): void;
6
+ export {};
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.onCoreEvent = onCoreEvent;
4
- exports.emitCoreEvent = emitCoreEvent;
5
- const logger_1 = require("../../shared/logger");
3
+ exports.onFrameworkEvent = onFrameworkEvent;
4
+ exports.emitFrameworkEvent = emitFrameworkEvent;
5
+ const logger_1 = require("../../../kernel/shared/logger");
6
6
  const handlers = {};
7
- function onCoreEvent(event, handler) {
7
+ function onFrameworkEvent(event, handler) {
8
8
  var _a;
9
9
  const list = ((_a = handlers[event]) !== null && _a !== void 0 ? _a : (handlers[event] = []));
10
10
  list.push(handler);
@@ -14,7 +14,7 @@ function onCoreEvent(event, handler) {
14
14
  list.splice(index, 1);
15
15
  };
16
16
  }
17
- function emitCoreEvent(event, payload) {
17
+ function emitFrameworkEvent(event, payload) {
18
18
  const list = handlers[event];
19
19
  if (!list)
20
20
  return;
@@ -1,4 +1,4 @@
1
- import { FluentConfigurator } from './config.base';
1
+ import { type FluentConfigurator } from './config.base';
2
2
  interface ApiConfigState {
3
3
  baseUrl: string;
4
4
  timeoutMs: number;
@@ -1,5 +1,5 @@
1
- import type { LinkedID } from '../../services';
2
- import type { Server } from '../../..';
1
+ import { Server } from '../../..';
2
+ import { LinkedID } from '../services/types/linked-id';
3
3
  export interface AuthCredentials {
4
4
  /** Standard username/password auth */
5
5
  username?: string;
@@ -0,0 +1,7 @@
1
+ export * from './auth-provider.contract';
2
+ export * from './player-persistence.contract';
3
+ export * from './repository/index';
4
+ export * from './security/net-event-security-observer.contract';
5
+ export * from './security/permission.types';
6
+ export * from './security/principal-provider.contract';
7
+ export * from './security/security-handler.contract';
@@ -1,4 +1,5 @@
1
1
  "use strict";
2
+ // Security
2
3
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
4
  if (k2 === undefined) k2 = k;
4
5
  var desc = Object.getOwnPropertyDescriptor(m, k);
@@ -14,8 +15,11 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
15
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
16
  };
16
17
  Object.defineProperty(exports, "__esModule", { value: true });
17
- // Abstract templates and contracts
18
+ __exportStar(require("./auth-provider.contract"), exports);
19
+ __exportStar(require("./player-persistence.contract"), exports);
20
+ // Repository
21
+ __exportStar(require("./repository/index"), exports);
22
+ __exportStar(require("./security/net-event-security-observer.contract"), exports);
23
+ __exportStar(require("./security/permission.types"), exports);
18
24
  __exportStar(require("./security/principal-provider.contract"), exports);
19
- __exportStar(require("./repository"), exports);
20
- __exportStar(require("./persistence"), exports);
21
- __exportStar(require("./auth/auth-provider.contract"), exports);
25
+ __exportStar(require("./security/security-handler.contract"), exports);
@@ -1,4 +1,4 @@
1
- import type { Player } from '../../entities/player';
1
+ import { Player } from '../entities';
2
2
  /**
3
3
  * Configuration for player data persistence behavior.
4
4
  */
@@ -7,7 +7,7 @@
7
7
  * @example
8
8
  * ```typescript
9
9
  * import { Repository, FindOptions } from '@open-core/framework/server'
10
- * import type { DatabaseContract } from '@open-core/framework/server'
10
+ * import { DatabaseContract } from '@open-core/framework/server'
11
11
  *
12
12
  * interface User {
13
13
  * id: number
@@ -53,5 +53,5 @@
53
53
  * }
54
54
  * ```
55
55
  */
56
- export type { OrderDirection, FindOptions, FindManyResult, WhereCondition, } from './repository.types';
57
56
  export { Repository } from './repository.contract';
57
+ export type { FindManyResult, FindOptions, OrderDirection, WhereCondition, } from './repository.types';
@@ -8,7 +8,7 @@
8
8
  * @example
9
9
  * ```typescript
10
10
  * import { Repository, FindOptions } from '@open-core/framework/server'
11
- * import type { DatabaseContract } from '@open-core/framework/server'
11
+ * import { DatabaseContract } from '@open-core/framework/server'
12
12
  *
13
13
  * interface User {
14
14
  * id: number
@@ -45,8 +45,8 @@
45
45
  * const users = await userRepo.findMany({ active: true }, { limit: 10, orderBy: { createdAt: 'DESC' } })
46
46
  * ```
47
47
  */
48
- import type { DatabaseContract } from '../../database/database.contract';
49
- import type { FindOptions, FindManyResult, WhereCondition, OrderDirection } from './repository.types';
48
+ import { DatabaseContract } from '../../database/database.contract';
49
+ import { FindManyResult, FindOptions, OrderDirection, WhereCondition } from './repository.types';
50
50
  /**
51
51
  * Abstract Repository base class
52
52
  *
@@ -295,7 +295,6 @@ class Repository {
295
295
  conditions.push(`${key} IS NULL`);
296
296
  }
297
297
  else if (value === undefined) {
298
- continue; // Skip undefined values
299
298
  }
300
299
  else {
301
300
  conditions.push(`${key} = ?`);
@@ -0,0 +1,15 @@
1
+ import { Player } from '../../entities/player';
2
+ export type NetEventInvalidPayloadReason = 'zod' | 'arg_count' | 'security_error' | 'unknown';
3
+ export interface NetEventInvalidPayloadContext {
4
+ event: string;
5
+ reason: NetEventInvalidPayloadReason;
6
+ playerId: number;
7
+ accountId?: string;
8
+ invalidCount: number;
9
+ zodSummary?: string[];
10
+ receivedArgsCount?: number;
11
+ expectedArgsCount?: number;
12
+ }
13
+ export declare abstract class NetEventSecurityObserverContract {
14
+ abstract onInvalidPayload(player: Player, ctx: NetEventInvalidPayloadContext): Promise<void>;
15
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NetEventSecurityObserverContract = void 0;
4
+ class NetEventSecurityObserverContract {
5
+ }
6
+ exports.NetEventSecurityObserverContract = NetEventSecurityObserverContract;
@@ -1,6 +1,6 @@
1
- import type { Server } from '../../..';
2
- import type { LinkedID } from '../../services';
3
- import type { Principal } from './permission.types';
1
+ import { Server } from '../../../..';
2
+ import { LinkedID } from '../../services/types/linked-id';
3
+ import { Principal } from './permission.types';
4
4
  /**
5
5
  * **Authorization**
6
6
  *
@@ -1,5 +1,5 @@
1
- import type { Server } from '../../..';
2
- import type { SecurityError } from '../../../utils';
1
+ import { Server } from '../../../..';
2
+ import { SecurityError } from '../../../../kernel/utils/error/security.error';
3
3
  export declare abstract class SecurityHandlerContract {
4
4
  abstract handleViolation(player: Server.Player, error: SecurityError): Promise<void>;
5
5
  }
@@ -0,0 +1,11 @@
1
+ import { RGB } from '../../../kernel/utils';
2
+ import { ChatService } from '../services/chat.service';
3
+ import { PlayerDirectoryPort } from '../services/ports/player-directory.port';
4
+ export declare class ChatController {
5
+ private readonly chatService;
6
+ private readonly playerDirectory;
7
+ constructor(chatService: ChatService, playerDirectory: PlayerDirectoryPort);
8
+ coreBroadcast(message: string, author?: string, color?: RGB): void;
9
+ coreSendPrivate(targetId: number, message: string, author?: string): void;
10
+ coreSendToGroupOfPlayers(targets: number[], message: string, author?: string, color?: RGB): void;
11
+ }