@open-core/framework 1.0.4-beta.1 → 1.0.5-beta.2

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 (964) hide show
  1. package/LICENSE +373 -373
  2. package/README.md +196 -268
  3. package/dist/adapters/contracts/IEngineEvents.d.ts +23 -0
  4. package/dist/adapters/contracts/IEngineEvents.js +9 -0
  5. package/dist/adapters/contracts/IExports.d.ts +4 -0
  6. package/dist/adapters/contracts/IExports.js +2 -0
  7. package/dist/adapters/contracts/IHasher.d.ts +15 -0
  8. package/dist/adapters/contracts/IHasher.js +8 -0
  9. package/dist/adapters/contracts/IPlatformContext.d.ts +43 -0
  10. package/dist/adapters/contracts/IPlatformContext.js +8 -0
  11. package/dist/adapters/contracts/IPlayerInfo.d.ts +5 -0
  12. package/dist/adapters/contracts/IPlayerInfo.js +2 -0
  13. package/dist/adapters/contracts/IResourceInfo.d.ts +4 -0
  14. package/dist/adapters/contracts/IResourceInfo.js +2 -0
  15. package/dist/adapters/contracts/ITick.d.ts +10 -0
  16. package/dist/adapters/contracts/ITick.js +5 -0
  17. package/dist/adapters/contracts/client/IClientLocalPlayerBridge.d.ts +4 -0
  18. package/dist/adapters/contracts/client/IClientLocalPlayerBridge.js +2 -0
  19. package/dist/adapters/contracts/client/IClientLogConsole.d.ts +13 -0
  20. package/dist/adapters/contracts/client/IClientLogConsole.js +2 -0
  21. package/dist/adapters/contracts/client/IClientPlatformBridge.d.ts +195 -0
  22. package/dist/adapters/contracts/client/IClientPlatformBridge.js +282 -0
  23. package/dist/adapters/contracts/client/IClientRuntimeBridge.d.ts +18 -0
  24. package/dist/adapters/contracts/client/IClientRuntimeBridge.js +14 -0
  25. package/dist/adapters/contracts/client/IGtaPedAppearanceBridge.d.ts +26 -0
  26. package/dist/adapters/contracts/client/IGtaPedAppearanceBridge.js +2 -0
  27. package/dist/adapters/contracts/client/index.d.ts +7 -0
  28. package/dist/adapters/contracts/client/index.js +7 -0
  29. package/dist/adapters/contracts/client/spawn/IClientSpawnBridge.d.ts +7 -0
  30. package/dist/adapters/contracts/client/spawn/IClientSpawnBridge.js +2 -0
  31. package/dist/adapters/contracts/client/spawn/index.d.ts +2 -0
  32. package/dist/adapters/contracts/client/spawn/index.js +2 -0
  33. package/dist/adapters/contracts/client/spawn/types.d.ts +14 -0
  34. package/dist/adapters/contracts/client/ui/IClientBlipBridge.d.ts +25 -0
  35. package/dist/adapters/contracts/client/ui/IClientBlipBridge.js +2 -0
  36. package/dist/adapters/contracts/client/ui/IClientMarkerBridge.d.ts +31 -0
  37. package/dist/adapters/contracts/client/ui/IClientMarkerBridge.js +2 -0
  38. package/dist/adapters/contracts/client/ui/IClientNotificationBridge.d.ts +21 -0
  39. package/dist/adapters/contracts/client/ui/IClientNotificationBridge.js +2 -0
  40. package/dist/adapters/contracts/client/ui/index.d.ts +4 -0
  41. package/dist/adapters/contracts/client/ui/index.js +4 -0
  42. package/dist/adapters/contracts/client/ui/webview/IClientWebViewBridge.d.ts +13 -0
  43. package/dist/adapters/contracts/client/ui/webview/IClientWebViewBridge.js +2 -0
  44. package/dist/adapters/contracts/client/ui/webview/index.d.ts +2 -0
  45. package/dist/adapters/contracts/client/ui/webview/index.js +2 -0
  46. package/dist/adapters/contracts/client/ui/webview/types.d.ts +25 -0
  47. package/dist/adapters/contracts/client/ui/webview/types.js +0 -0
  48. package/dist/adapters/contracts/index.d.ts +4 -0
  49. package/dist/adapters/contracts/index.js +4 -0
  50. package/dist/adapters/contracts/runtime/index.d.ts +1 -0
  51. package/dist/adapters/contracts/runtime/index.js +1 -0
  52. package/dist/adapters/contracts/runtime/runtime-events.d.ts +9 -0
  53. package/dist/adapters/contracts/runtime/runtime-events.js +7 -0
  54. package/dist/adapters/contracts/server/IEntityServer.d.ts +164 -0
  55. package/dist/adapters/contracts/server/IEntityServer.js +9 -0
  56. package/dist/adapters/contracts/server/IPedAppearanceServer.d.ts +45 -0
  57. package/dist/adapters/contracts/server/IPedAppearanceServer.js +12 -0
  58. package/dist/adapters/contracts/server/IPedServer.d.ts +29 -0
  59. package/dist/adapters/contracts/server/IPedServer.js +8 -0
  60. package/dist/adapters/contracts/server/IPlayerServer.d.ts +98 -0
  61. package/dist/adapters/contracts/server/IPlayerServer.js +9 -0
  62. package/dist/adapters/contracts/server/IVehicleServer.d.ts +55 -0
  63. package/dist/adapters/contracts/server/IVehicleServer.js +9 -0
  64. package/dist/adapters/contracts/server/index.d.ts +10 -0
  65. package/dist/adapters/contracts/server/index.js +10 -0
  66. package/dist/adapters/contracts/server/npc-lifecycle/INpcLifecycleServer.d.ts +5 -0
  67. package/dist/adapters/contracts/server/npc-lifecycle/INpcLifecycleServer.js +2 -0
  68. package/dist/adapters/contracts/server/npc-lifecycle/index.d.ts +2 -0
  69. package/dist/adapters/contracts/server/npc-lifecycle/index.js +2 -0
  70. package/dist/adapters/contracts/server/npc-lifecycle/types.d.ts +17 -0
  71. package/dist/adapters/contracts/server/npc-lifecycle/types.js +0 -0
  72. package/dist/adapters/contracts/server/player-appearance/IPlayerAppearanceLifecycleServer.d.ts +11 -0
  73. package/dist/adapters/contracts/server/player-appearance/IPlayerAppearanceLifecycleServer.js +2 -0
  74. package/dist/adapters/contracts/server/player-appearance/index.d.ts +1 -0
  75. package/dist/adapters/contracts/server/player-appearance/index.js +1 -0
  76. package/dist/adapters/contracts/server/player-lifecycle/IPlayerLifecycleServer.d.ts +6 -0
  77. package/dist/adapters/contracts/server/player-lifecycle/IPlayerLifecycleServer.js +2 -0
  78. package/dist/adapters/contracts/server/player-lifecycle/index.d.ts +2 -0
  79. package/dist/adapters/contracts/server/player-lifecycle/index.js +2 -0
  80. package/dist/adapters/contracts/server/player-lifecycle/types.d.ts +17 -0
  81. package/dist/adapters/contracts/server/player-lifecycle/types.js +0 -0
  82. package/dist/adapters/contracts/server/player-state/IPlayerStateSyncServer.d.ts +6 -0
  83. package/dist/adapters/contracts/server/player-state/IPlayerStateSyncServer.js +2 -0
  84. package/dist/adapters/contracts/server/player-state/index.d.ts +1 -0
  85. package/dist/adapters/contracts/server/player-state/index.js +1 -0
  86. package/dist/adapters/contracts/server/vehicle-lifecycle/IVehicleLifecycleServer.d.ts +5 -0
  87. package/dist/adapters/contracts/server/vehicle-lifecycle/IVehicleLifecycleServer.js +2 -0
  88. package/dist/adapters/contracts/server/vehicle-lifecycle/index.d.ts +2 -0
  89. package/dist/adapters/contracts/server/vehicle-lifecycle/index.js +2 -0
  90. package/dist/adapters/contracts/server/vehicle-lifecycle/types.d.ts +16 -0
  91. package/dist/adapters/contracts/server/vehicle-lifecycle/types.js +0 -0
  92. package/dist/adapters/contracts/transport/context.d.ts +5 -0
  93. package/dist/adapters/contracts/transport/context.js +0 -0
  94. package/dist/adapters/contracts/transport/events.api.d.ts +36 -0
  95. package/dist/adapters/contracts/transport/events.api.js +5 -0
  96. package/dist/adapters/contracts/transport/index.d.ts +4 -0
  97. package/dist/adapters/contracts/transport/index.js +4 -0
  98. package/dist/adapters/contracts/transport/messaging.transport.d.ts +8 -0
  99. package/dist/adapters/contracts/transport/messaging.transport.js +2 -0
  100. package/dist/adapters/contracts/transport/rpc.api.d.ts +66 -0
  101. package/dist/adapters/contracts/transport/rpc.api.js +20 -0
  102. package/dist/adapters/contracts/types/identifier.d.ts +67 -0
  103. package/dist/adapters/contracts/types/identifier.js +58 -0
  104. package/dist/adapters/contracts/types/index.d.ts +1 -0
  105. package/dist/adapters/contracts/types/index.js +1 -0
  106. package/dist/adapters/index.d.ts +10 -0
  107. package/dist/adapters/index.js +15 -0
  108. package/dist/adapters/node/index.d.ts +16 -0
  109. package/dist/adapters/node/index.js +18 -0
  110. package/dist/adapters/node/node-capabilities.d.ts +19 -0
  111. package/dist/adapters/node/node-capabilities.js +36 -0
  112. package/dist/adapters/node/node-engine-events.d.ts +20 -0
  113. package/dist/adapters/node/node-engine-events.js +41 -0
  114. package/dist/adapters/node/node-entity-server.d.ts +37 -0
  115. package/dist/adapters/node/node-entity-server.js +118 -0
  116. package/dist/adapters/node/node-exports.d.ts +26 -0
  117. package/dist/adapters/node/node-exports.js +58 -0
  118. package/dist/adapters/node/node-hasher.d.ts +12 -0
  119. package/dist/adapters/node/node-hasher.js +36 -0
  120. package/dist/adapters/node/node-ped-appearance-client.d.ts +34 -0
  121. package/dist/adapters/node/node-ped-appearance-client.js +55 -0
  122. package/dist/adapters/node/node-ped-appearance-server.d.ts +14 -0
  123. package/dist/adapters/node/node-ped-appearance-server.js +14 -0
  124. package/dist/adapters/node/node-ped-server.d.ts +13 -0
  125. package/dist/adapters/node/node-ped-server.js +45 -0
  126. package/dist/adapters/node/node-platform.d.ts +5 -0
  127. package/dist/adapters/node/node-platform.js +76 -0
  128. package/dist/adapters/node/node-player-server.d.ts +45 -0
  129. package/dist/adapters/node/node-player-server.js +111 -0
  130. package/dist/adapters/node/node-playerinfo.d.ts +6 -0
  131. package/dist/adapters/node/node-playerinfo.js +20 -0
  132. package/dist/adapters/node/node-resourceinfo.d.ts +13 -0
  133. package/dist/adapters/node/node-resourceinfo.js +27 -0
  134. package/dist/adapters/node/node-tick.d.ts +10 -0
  135. package/dist/adapters/node/node-tick.js +41 -0
  136. package/dist/adapters/node/node-vehicle-server.d.ts +21 -0
  137. package/dist/adapters/node/node-vehicle-server.js +84 -0
  138. package/dist/adapters/node/transport/adapter.d.ts +10 -0
  139. package/dist/adapters/node/transport/adapter.js +14 -0
  140. package/dist/adapters/node/transport/node.events.d.ts +14 -0
  141. package/dist/adapters/node/transport/node.events.js +38 -0
  142. package/dist/adapters/node/transport/node.rpc.d.ts +18 -0
  143. package/dist/adapters/node/transport/node.rpc.js +71 -0
  144. package/dist/adapters/platform/index.d.ts +1 -0
  145. package/dist/adapters/platform/index.js +1 -0
  146. package/dist/adapters/platform/platform-registry.d.ts +101 -0
  147. package/dist/adapters/platform/platform-registry.js +113 -0
  148. package/dist/adapters/register-capabilities.d.ts +61 -0
  149. package/dist/adapters/register-capabilities.js +76 -0
  150. package/dist/adapters/register-client-capabilities.d.ts +9 -0
  151. package/dist/adapters/register-client-capabilities.js +33 -0
  152. package/dist/contracts/client.d.ts +5 -0
  153. package/dist/contracts/client.js +5 -0
  154. package/dist/contracts/server.d.ts +19 -0
  155. package/dist/contracts/server.js +19 -0
  156. package/dist/contracts.d.ts +4 -0
  157. package/dist/contracts.js +4 -0
  158. package/dist/index.d.ts +3 -4
  159. package/dist/index.js +4 -41
  160. package/dist/kernel/di/class-constructor.js +0 -0
  161. package/dist/kernel/di/container.d.ts +5 -0
  162. package/dist/kernel/di/container.js +6 -0
  163. package/dist/kernel/di/decorator-processor.js +0 -0
  164. package/dist/kernel/di/index.d.ts +4 -0
  165. package/dist/kernel/di/index.js +4 -0
  166. package/dist/kernel/di/metadata.scanner.d.ts +7 -0
  167. package/dist/kernel/di/metadata.scanner.js +61 -0
  168. package/dist/kernel/error/app.error.d.ts +9 -0
  169. package/dist/kernel/error/app.error.js +15 -0
  170. package/dist/kernel/error/common.error-codes.d.ts +1 -0
  171. package/dist/kernel/error/common.error-codes.js +0 -0
  172. package/dist/kernel/error/framework.error-codes.d.ts +12 -0
  173. package/dist/kernel/error/framework.error-codes.js +0 -0
  174. package/dist/kernel/error/index.d.ts +4 -0
  175. package/dist/kernel/error/index.js +2 -0
  176. package/dist/kernel/error/security.error.d.ts +6 -0
  177. package/dist/kernel/error/security.error.js +9 -0
  178. package/dist/kernel/error/security.types.js +0 -0
  179. package/dist/kernel/index.d.ts +6 -0
  180. package/dist/kernel/index.js +7 -0
  181. package/dist/kernel/logger/client-log-console.d.ts +4 -0
  182. package/dist/kernel/logger/client-log-console.js +43 -0
  183. package/dist/kernel/logger/core-logger.d.ts +33 -0
  184. package/dist/kernel/logger/core-logger.js +68 -0
  185. package/dist/kernel/logger/index.d.ts +16 -0
  186. package/dist/kernel/logger/index.js +13 -0
  187. package/dist/kernel/logger/logger.config.d.ts +47 -0
  188. package/dist/kernel/logger/logger.config.js +32 -0
  189. package/dist/kernel/logger/logger.env.d.ts +35 -0
  190. package/dist/kernel/logger/logger.env.js +59 -0
  191. package/dist/kernel/logger/logger.service.d.ts +175 -0
  192. package/dist/kernel/logger/logger.service.js +301 -0
  193. package/dist/kernel/logger/logger.types.js +70 -0
  194. package/dist/kernel/logger/transports/buffered.transport.d.ts +88 -0
  195. package/dist/kernel/logger/transports/buffered.transport.js +154 -0
  196. package/dist/kernel/logger/transports/console.transport.d.ts +37 -0
  197. package/dist/kernel/logger/transports/console.transport.js +121 -0
  198. package/dist/kernel/logger/transports/dev-transport.factory.d.ts +75 -0
  199. package/dist/kernel/logger/transports/dev-transport.factory.js +101 -0
  200. package/dist/kernel/logger/transports/http.transport.d.ts +67 -0
  201. package/dist/kernel/logger/transports/http.transport.js +168 -0
  202. package/dist/kernel/logger/transports/index.d.ts +7 -0
  203. package/dist/kernel/logger/transports/index.js +7 -0
  204. package/dist/kernel/logger/transports/simple-console.transport.d.ts +38 -0
  205. package/dist/kernel/logger/transports/simple-console.transport.js +84 -0
  206. package/dist/kernel/logger/transports/transport.interface.d.ts +40 -0
  207. package/dist/kernel/logger/transports/transport.interface.js +0 -0
  208. package/dist/kernel/logger/transports/websocket.transport.d.ts +69 -0
  209. package/dist/kernel/logger/transports/websocket.transport.js +164 -0
  210. package/dist/kernel/schema/index.d.ts +32 -0
  211. package/dist/kernel/schema/index.js +4 -0
  212. package/dist/kernel/shared/index.d.ts +1 -0
  213. package/dist/kernel/shared/index.js +1 -0
  214. package/dist/kernel/shared/player-appearance.types.d.ts +276 -0
  215. package/dist/kernel/shared/player-appearance.types.js +74 -0
  216. package/dist/kernel/utils/index.d.ts +3 -0
  217. package/dist/kernel/utils/index.js +3 -0
  218. package/dist/kernel/utils/result.d.ts +12 -0
  219. package/dist/kernel/utils/result.js +6 -0
  220. package/dist/kernel/utils/rgb.d.ts +17 -0
  221. package/dist/kernel/utils/rgb.js +61 -0
  222. package/dist/kernel/utils/vector3.d.ts +14 -0
  223. package/dist/kernel/utils/vector3.js +24 -0
  224. package/dist/kernel-public.d.ts +1 -0
  225. package/dist/kernel-public.js +1 -0
  226. package/dist/runtime/client/.opencore/autoload.client.controllers.d.ts +1 -0
  227. package/dist/runtime/client/.opencore/autoload.client.controllers.js +0 -0
  228. package/dist/runtime/client/adapter/client-adapter.d.ts +25 -0
  229. package/dist/runtime/client/adapter/client-adapter.js +11 -0
  230. package/dist/runtime/client/adapter/index.d.ts +15 -0
  231. package/dist/runtime/client/adapter/index.js +15 -0
  232. package/dist/runtime/client/adapter/local-player-bridge.d.ts +1 -0
  233. package/dist/runtime/client/adapter/local-player-bridge.js +1 -0
  234. package/dist/runtime/client/adapter/node-blip-bridge.d.ts +9 -0
  235. package/dist/runtime/client/adapter/node-blip-bridge.js +34 -0
  236. package/dist/runtime/client/adapter/node-client-adapter.d.ts +5 -0
  237. package/dist/runtime/client/adapter/node-client-adapter.js +50 -0
  238. package/dist/runtime/client/adapter/node-local-player-bridge.d.ts +8 -0
  239. package/dist/runtime/client/adapter/node-local-player-bridge.js +18 -0
  240. package/dist/runtime/client/adapter/node-log-console.d.ts +11 -0
  241. package/dist/runtime/client/adapter/node-log-console.js +48 -0
  242. package/dist/runtime/client/adapter/node-marker-bridge.d.ts +10 -0
  243. package/dist/runtime/client/adapter/node-marker-bridge.js +35 -0
  244. package/dist/runtime/client/adapter/node-notification-bridge.d.ts +5 -0
  245. package/dist/runtime/client/adapter/node-notification-bridge.js +16 -0
  246. package/dist/runtime/client/adapter/node-platform-bridge.d.ts +3 -0
  247. package/dist/runtime/client/adapter/node-platform-bridge.js +14 -0
  248. package/dist/runtime/client/adapter/node-runtime-bridge.d.ts +24 -0
  249. package/dist/runtime/client/adapter/node-runtime-bridge.js +58 -0
  250. package/dist/runtime/client/adapter/node-spawn-bridge.d.ts +8 -0
  251. package/dist/runtime/client/adapter/node-spawn-bridge.js +18 -0
  252. package/dist/runtime/client/adapter/node-webview-bridge.d.ts +15 -0
  253. package/dist/runtime/client/adapter/node-webview-bridge.js +43 -0
  254. package/dist/runtime/client/adapter/platform-bridge.d.ts +1 -0
  255. package/dist/runtime/client/adapter/platform-bridge.js +1 -0
  256. package/dist/runtime/client/adapter/registry.d.ts +9 -0
  257. package/dist/runtime/client/adapter/registry.js +85 -0
  258. package/dist/runtime/client/adapter/runtime-bridge.d.ts +1 -0
  259. package/dist/runtime/client/adapter/runtime-bridge.js +1 -0
  260. package/dist/runtime/client/api.d.ts +9 -0
  261. package/dist/runtime/client/api.js +9 -0
  262. package/dist/runtime/client/bus/library-event.bus.d.ts +5 -0
  263. package/dist/runtime/client/bus/library-event.bus.js +28 -0
  264. package/dist/runtime/client/client-api-runtime.d.ts +7 -0
  265. package/dist/runtime/client/client-api-runtime.js +34 -0
  266. package/dist/runtime/client/client-bootstrap.d.ts +7 -0
  267. package/dist/runtime/client/client-bootstrap.js +167 -0
  268. package/dist/runtime/client/client-container.js +3 -0
  269. package/dist/runtime/client/client-core.d.ts +21 -0
  270. package/dist/runtime/client/client-core.js +32 -0
  271. package/dist/runtime/client/client-runtime.d.ts +66 -0
  272. package/dist/runtime/client/client-runtime.js +24 -0
  273. package/dist/runtime/client/controllers/appearance.controller.d.ts +10 -0
  274. package/dist/runtime/client/controllers/appearance.controller.js +58 -0
  275. package/dist/runtime/client/controllers/spawner.controller.d.ts +12 -0
  276. package/dist/runtime/client/controllers/spawner.controller.js +51 -0
  277. package/dist/runtime/client/decorators/controller.d.ts +20 -0
  278. package/dist/runtime/client/decorators/controller.js +54 -0
  279. package/dist/runtime/client/decorators/export.d.ts +21 -0
  280. package/dist/runtime/client/decorators/export.js +26 -0
  281. package/dist/runtime/client/decorators/gameEvent.d.ts +47 -0
  282. package/dist/runtime/client/decorators/gameEvent.js +50 -0
  283. package/dist/runtime/client/decorators/index.d.ts +13 -0
  284. package/dist/runtime/client/decorators/index.js +13 -0
  285. package/dist/runtime/client/decorators/interval.d.ts +23 -0
  286. package/dist/runtime/client/decorators/interval.js +28 -0
  287. package/dist/runtime/client/decorators/key.d.ts +23 -0
  288. package/dist/runtime/client/decorators/key.js +28 -0
  289. package/dist/runtime/client/decorators/localEvent.d.ts +21 -0
  290. package/dist/runtime/client/decorators/localEvent.js +26 -0
  291. package/dist/runtime/client/decorators/onLibraryEvent.d.ts +17 -0
  292. package/dist/runtime/client/decorators/onLibraryEvent.js +22 -0
  293. package/dist/runtime/client/decorators/onNet.d.ts +21 -0
  294. package/dist/runtime/client/decorators/onNet.js +26 -0
  295. package/dist/runtime/client/decorators/onRPC.d.ts +41 -0
  296. package/dist/runtime/client/decorators/onRPC.js +40 -0
  297. package/dist/runtime/client/decorators/onTick.d.ts +21 -0
  298. package/dist/runtime/client/decorators/onTick.js +26 -0
  299. package/dist/runtime/client/decorators/onView.d.ts +21 -0
  300. package/dist/runtime/client/decorators/onView.js +26 -0
  301. package/dist/runtime/client/decorators/resourceLifecycle.d.ts +40 -0
  302. package/dist/runtime/client/decorators/resourceLifecycle.js +49 -0
  303. package/dist/runtime/client/index.d.ts +5 -0
  304. package/dist/runtime/client/index.js +3 -0
  305. package/dist/runtime/client/library/create-client-library.d.ts +13 -0
  306. package/dist/runtime/client/library/create-client-library.js +53 -0
  307. package/dist/runtime/client/library/index.d.ts +4 -0
  308. package/dist/runtime/client/library/index.js +2 -0
  309. package/dist/runtime/client/library/plugin/client-plugin-api.d.ts +5 -0
  310. package/dist/runtime/client/library/plugin/client-plugin-api.js +0 -0
  311. package/dist/runtime/client/library/plugin/index.d.ts +4 -0
  312. package/dist/runtime/client/library/plugin/index.js +4 -0
  313. package/dist/runtime/client/library/plugin/install-client-plugins.d.ts +3 -0
  314. package/dist/runtime/client/library/plugin/install-client-plugins.js +35 -0
  315. package/dist/runtime/client/library/plugin/plugin-context.d.ts +10 -0
  316. package/dist/runtime/client/library/plugin/plugin-context.js +0 -0
  317. package/dist/runtime/client/library/plugin/plugin-registry.d.ts +6 -0
  318. package/dist/runtime/client/library/plugin/plugin-registry.js +12 -0
  319. package/dist/runtime/client/library/plugin/plugin.interface.d.ts +11 -0
  320. package/dist/runtime/client/library/plugin/plugin.interface.js +0 -0
  321. package/dist/runtime/client/services/appearance.service.d.ts +132 -0
  322. package/dist/runtime/client/services/appearance.service.js +333 -0
  323. package/dist/runtime/client/services/blip.service.d.ts +25 -0
  324. package/dist/runtime/client/services/blip.service.js +114 -0
  325. package/dist/runtime/client/services/camera-effects.registry.d.ts +97 -0
  326. package/dist/runtime/client/services/camera-effects.registry.js +158 -0
  327. package/dist/runtime/client/services/camera.d.ts +49 -0
  328. package/dist/runtime/client/services/camera.js +102 -0
  329. package/dist/runtime/client/services/cinematic-builder.d.ts +107 -0
  330. package/dist/runtime/client/services/cinematic-builder.js +467 -0
  331. package/dist/runtime/client/services/cinematic.d.ts +288 -0
  332. package/dist/runtime/client/services/cinematic.js +798 -0
  333. package/dist/runtime/client/services/index.d.ts +15 -0
  334. package/dist/runtime/client/services/index.js +15 -0
  335. package/dist/runtime/client/services/marker.service.d.ts +43 -0
  336. package/dist/runtime/client/services/marker.service.js +113 -0
  337. package/dist/runtime/client/services/notification.service.d.ts +25 -0
  338. package/dist/runtime/client/services/notification.service.js +70 -0
  339. package/dist/runtime/client/services/ped.service.d.ts +55 -0
  340. package/dist/runtime/client/services/ped.service.js +166 -0
  341. package/dist/runtime/client/services/progress.service.d.ts +57 -0
  342. package/dist/runtime/client/services/progress.service.js +173 -0
  343. package/dist/runtime/client/services/session-bridge.service.d.ts +15 -0
  344. package/dist/runtime/client/services/session-bridge.service.js +61 -0
  345. package/dist/runtime/client/services/spawn.service.d.ts +23 -0
  346. package/dist/runtime/client/services/spawn.service.js +98 -0
  347. package/dist/runtime/client/services/streaming.service.d.ts +44 -0
  348. package/dist/runtime/client/services/streaming.service.js +186 -0
  349. package/dist/runtime/client/services/textui.service.d.ts +42 -0
  350. package/dist/runtime/client/services/textui.service.js +127 -0
  351. package/dist/runtime/client/services/vehicle-client.service.d.ts +43 -0
  352. package/dist/runtime/client/services/vehicle-client.service.js +337 -0
  353. package/dist/runtime/client/services/vehicle.service.d.ts +62 -0
  354. package/dist/runtime/client/services/vehicle.service.js +193 -0
  355. package/dist/runtime/client/system/metadata-client.keys.d.ts +15 -0
  356. package/dist/runtime/client/system/metadata-client.keys.js +15 -0
  357. package/dist/runtime/client/system/processors/export.processor.d.ts +10 -0
  358. package/dist/runtime/client/system/processors/export.processor.js +47 -0
  359. package/dist/runtime/client/system/processors/gameEvent.processor.d.ts +13 -0
  360. package/dist/runtime/client/system/processors/gameEvent.processor.js +66 -0
  361. package/dist/runtime/client/system/processors/interval.processor.d.ts +10 -0
  362. package/dist/runtime/client/system/processors/interval.processor.js +51 -0
  363. package/dist/runtime/client/system/processors/key.processor.d.ts +11 -0
  364. package/dist/runtime/client/system/processors/key.processor.js +35 -0
  365. package/dist/runtime/client/system/processors/libraryEvent.processor.d.ts +6 -0
  366. package/dist/runtime/client/system/processors/libraryEvent.processor.js +36 -0
  367. package/dist/runtime/client/system/processors/localEvent.processor.d.ts +10 -0
  368. package/dist/runtime/client/system/processors/localEvent.processor.js +46 -0
  369. package/dist/runtime/client/system/processors/netEvent.processor.d.ts +10 -0
  370. package/dist/runtime/client/system/processors/netEvent.processor.js +46 -0
  371. package/dist/runtime/client/system/processors/onRpc.processor.d.ts +9 -0
  372. package/dist/runtime/client/system/processors/onRpc.processor.js +62 -0
  373. package/dist/runtime/client/system/processors/resourceLifecycle.processor.d.ts +14 -0
  374. package/dist/runtime/client/system/processors/resourceLifecycle.processor.js +81 -0
  375. package/dist/runtime/client/system/processors/tick.processor.d.ts +8 -0
  376. package/dist/runtime/client/system/processors/tick.processor.js +45 -0
  377. package/dist/runtime/client/system/processors/view.processor.d.ts +10 -0
  378. package/dist/runtime/client/system/processors/view.processor.js +47 -0
  379. package/dist/runtime/client/system/processors.register.d.ts +2 -0
  380. package/dist/runtime/client/system/processors.register.js +36 -0
  381. package/dist/runtime/client/types/game-events.d.ts +128 -0
  382. package/dist/runtime/client/types/game-events.js +72 -0
  383. package/dist/runtime/client/types/index.js +1 -0
  384. package/dist/runtime/client/ui-bridge.d.ts +4 -0
  385. package/dist/runtime/client/ui-bridge.js +4 -0
  386. package/dist/runtime/client/webview-bridge.d.ts +31 -0
  387. package/dist/runtime/client/webview-bridge.js +97 -0
  388. package/dist/runtime/client/webview.service.d.ts +14 -0
  389. package/dist/runtime/client/webview.service.js +98 -0
  390. package/dist/runtime/core/entity.d.ts +168 -0
  391. package/dist/runtime/core/entity.js +232 -0
  392. package/dist/runtime/core/index.d.ts +5 -0
  393. package/dist/runtime/core/index.js +5 -0
  394. package/dist/runtime/core/library/create-library-base.d.ts +15 -0
  395. package/dist/runtime/core/library/create-library-base.js +27 -0
  396. package/dist/runtime/core/library/index.d.ts +5 -0
  397. package/dist/runtime/core/library/index.js +4 -0
  398. package/dist/runtime/core/library/library-bus.d.ts +9 -0
  399. package/dist/runtime/core/library/library-bus.js +46 -0
  400. package/dist/runtime/core/library/library-config.d.ts +10 -0
  401. package/dist/runtime/core/library/library-config.js +12 -0
  402. package/dist/runtime/core/library/library-event-id.d.ts +8 -0
  403. package/dist/runtime/core/library/library-event-id.js +9 -0
  404. package/dist/runtime/core/library/types.d.ts +146 -0
  405. package/dist/runtime/core/library/types.js +0 -0
  406. package/dist/runtime/core/nativehandle.d.ts +3 -0
  407. package/dist/runtime/core/nativehandle.js +0 -0
  408. package/dist/runtime/core/spatial.d.ts +7 -0
  409. package/dist/runtime/core/spatial.js +0 -0
  410. package/dist/runtime/core/world.d.ts +13 -0
  411. package/dist/runtime/core/world.js +57 -0
  412. package/dist/runtime/server/.opencore/autoload.server.controllers.d.ts +1 -0
  413. package/dist/runtime/server/.opencore/autoload.server.controllers.js +0 -0
  414. package/dist/runtime/server/adapter/index.d.ts +5 -0
  415. package/dist/runtime/server/adapter/index.js +5 -0
  416. package/dist/runtime/server/adapter/node-npc-lifecycle-server.d.ts +12 -0
  417. package/dist/runtime/server/adapter/node-npc-lifecycle-server.js +52 -0
  418. package/dist/runtime/server/adapter/node-player-appearance-lifecycle-server.d.ts +22 -0
  419. package/dist/runtime/server/adapter/node-player-appearance-lifecycle-server.js +94 -0
  420. package/dist/runtime/server/adapter/node-player-lifecycle-server.d.ts +11 -0
  421. package/dist/runtime/server/adapter/node-player-lifecycle-server.js +55 -0
  422. package/dist/runtime/server/adapter/node-player-state-sync-server.d.ts +12 -0
  423. package/dist/runtime/server/adapter/node-player-state-sync-server.js +49 -0
  424. package/dist/runtime/server/adapter/node-server-adapter.d.ts +5 -0
  425. package/dist/runtime/server/adapter/node-server-adapter.js +67 -0
  426. package/dist/runtime/server/adapter/node-vehicle-lifecycle-server.d.ts +13 -0
  427. package/dist/runtime/server/adapter/node-vehicle-lifecycle-server.js +57 -0
  428. package/dist/runtime/server/adapter/player-adapter.d.ts +28 -0
  429. package/dist/runtime/server/adapter/player-adapter.js +28 -0
  430. package/dist/runtime/server/adapter/registry.d.ts +26 -0
  431. package/dist/runtime/server/adapter/registry.js +101 -0
  432. package/dist/runtime/server/adapter/serialization.d.ts +6 -0
  433. package/dist/runtime/server/adapter/serialization.js +9 -0
  434. package/dist/runtime/server/adapter/server-adapter.d.ts +28 -0
  435. package/dist/runtime/server/adapter/server-adapter.js +14 -0
  436. package/dist/runtime/server/api.d.ts +16 -0
  437. package/dist/runtime/server/api.js +22 -0
  438. package/dist/runtime/server/apis/appearance.api.d.ts +43 -0
  439. package/dist/runtime/server/apis/appearance.api.js +79 -0
  440. package/dist/runtime/server/apis/chat.api.d.ts +69 -0
  441. package/dist/runtime/server/apis/chat.api.js +129 -0
  442. package/dist/runtime/server/apis/index.d.ts +6 -0
  443. package/dist/runtime/server/apis/index.js +6 -0
  444. package/dist/runtime/server/apis/npcs.api.d.ts +212 -0
  445. package/dist/runtime/server/apis/npcs.api.js +435 -0
  446. package/dist/runtime/server/apis/parallel-compute.api.d.ts +118 -0
  447. package/dist/runtime/server/apis/parallel-compute.api.js +423 -0
  448. package/dist/runtime/server/apis/vehicle-modification.api.d.ts +96 -0
  449. package/dist/runtime/server/apis/vehicle-modification.api.js +313 -0
  450. package/dist/runtime/server/apis/vehicles.api.d.ts +146 -0
  451. package/dist/runtime/server/apis/vehicles.api.js +398 -0
  452. package/dist/runtime/server/bootstrap.d.ts +21 -0
  453. package/dist/runtime/server/bootstrap.js +318 -0
  454. package/dist/runtime/server/bus/internal-event.bus.d.ts +6 -0
  455. package/dist/runtime/server/bus/internal-event.bus.js +30 -0
  456. package/dist/runtime/server/bus/library-event.bus.d.ts +5 -0
  457. package/dist/runtime/server/bus/library-event.bus.js +27 -0
  458. package/dist/runtime/server/concepts/channel.d.ts +29 -0
  459. package/dist/runtime/server/concepts/channel.js +70 -0
  460. package/dist/runtime/server/contracts/index.d.ts +6 -0
  461. package/dist/runtime/server/contracts/index.js +8 -0
  462. package/dist/runtime/server/contracts/player-persistence.contract.d.ts +84 -0
  463. package/dist/runtime/server/contracts/player-persistence.contract.js +46 -0
  464. package/dist/runtime/server/contracts/security/command-error-observer.contract.d.ts +73 -0
  465. package/dist/runtime/server/contracts/security/command-error-observer.contract.js +5 -0
  466. package/dist/runtime/server/contracts/security/net-event-security-observer.contract.d.ts +15 -0
  467. package/dist/runtime/server/contracts/security/net-event-security-observer.contract.js +2 -0
  468. package/dist/runtime/server/contracts/security/principal-provider.contract.d.ts +43 -0
  469. package/dist/runtime/server/contracts/security/principal-provider.contract.js +15 -0
  470. package/dist/runtime/server/contracts/security/security-handler.contract.d.ts +5 -0
  471. package/dist/runtime/server/contracts/security/security-handler.contract.js +2 -0
  472. package/dist/runtime/server/controllers/channel.controller.d.ts +115 -0
  473. package/dist/runtime/server/controllers/channel.controller.js +374 -0
  474. package/dist/runtime/server/controllers/chat.controller.d.ts +11 -0
  475. package/dist/runtime/server/controllers/chat.controller.js +67 -0
  476. package/dist/runtime/server/controllers/command-export.controller.d.ts +83 -0
  477. package/dist/runtime/server/controllers/command-export.controller.js +331 -0
  478. package/dist/runtime/server/controllers/player-export.controller.d.ts +30 -0
  479. package/dist/runtime/server/controllers/player-export.controller.js +173 -0
  480. package/dist/runtime/server/controllers/principal-export.controller.d.ts +79 -0
  481. package/dist/runtime/server/controllers/principal-export.controller.js +292 -0
  482. package/dist/runtime/server/controllers/ready.controller.d.ts +4 -0
  483. package/dist/runtime/server/controllers/ready.controller.js +27 -0
  484. package/dist/runtime/server/controllers/remote-command-execution.controller.d.ts +52 -0
  485. package/dist/runtime/server/controllers/remote-command-execution.controller.js +172 -0
  486. package/dist/runtime/server/controllers/session.controller.d.ts +11 -0
  487. package/dist/runtime/server/controllers/session.controller.js +84 -0
  488. package/dist/runtime/server/controllers/vehicle.controller.d.ts +22 -0
  489. package/dist/runtime/server/controllers/vehicle.controller.js +73 -0
  490. package/dist/runtime/server/core.d.ts +9 -0
  491. package/dist/runtime/server/core.js +45 -0
  492. package/dist/runtime/server/decorators/binaryCall.d.ts +15 -0
  493. package/dist/runtime/server/decorators/binaryCall.js +23 -0
  494. package/dist/runtime/server/decorators/binaryEvent.d.ts +21 -0
  495. package/dist/runtime/server/decorators/binaryEvent.js +22 -0
  496. package/dist/runtime/server/decorators/binaryService.d.ts +27 -0
  497. package/dist/runtime/server/decorators/binaryService.js +71 -0
  498. package/dist/runtime/server/decorators/bind.d.ts +21 -0
  499. package/dist/runtime/server/decorators/bind.js +28 -0
  500. package/dist/runtime/server/decorators/command.d.ts +87 -0
  501. package/dist/runtime/server/decorators/command.js +36 -0
  502. package/dist/runtime/server/decorators/controller.d.ts +26 -0
  503. package/dist/runtime/server/decorators/controller.js +56 -0
  504. package/dist/runtime/server/decorators/export.d.ts +24 -0
  505. package/dist/runtime/server/decorators/export.js +29 -0
  506. package/dist/runtime/server/decorators/guard.d.ts +51 -0
  507. package/dist/runtime/server/decorators/guard.js +80 -0
  508. package/dist/runtime/server/decorators/index.d.ts +18 -0
  509. package/dist/runtime/server/decorators/index.js +18 -0
  510. package/dist/runtime/server/decorators/onFrameworkEvent.d.ts +24 -0
  511. package/dist/runtime/server/decorators/onFrameworkEvent.js +28 -0
  512. package/dist/runtime/server/decorators/onLibraryEvent.d.ts +17 -0
  513. package/dist/runtime/server/decorators/onLibraryEvent.js +22 -0
  514. package/dist/runtime/server/decorators/onNet.d.ts +65 -0
  515. package/dist/runtime/server/decorators/onNet.js +12 -0
  516. package/dist/runtime/server/decorators/onRPC.d.ts +78 -0
  517. package/dist/runtime/server/decorators/onRPC.js +59 -0
  518. package/dist/runtime/server/decorators/onRuntimeEvent.d.ts +26 -0
  519. package/dist/runtime/server/decorators/onRuntimeEvent.js +30 -0
  520. package/dist/runtime/server/decorators/onTick.d.ts +21 -0
  521. package/dist/runtime/server/decorators/onTick.js +26 -0
  522. package/dist/runtime/server/decorators/public.d.ts +26 -0
  523. package/dist/runtime/server/decorators/public.js +32 -0
  524. package/dist/runtime/server/decorators/requiresState.d.ts +63 -0
  525. package/dist/runtime/server/decorators/requiresState.js +70 -0
  526. package/dist/runtime/server/decorators/throttle.d.ts +56 -0
  527. package/dist/runtime/server/decorators/throttle.js +73 -0
  528. package/dist/runtime/server/decorators/utils.d.ts +54 -0
  529. package/dist/runtime/server/decorators/utils.js +54 -0
  530. package/dist/runtime/server/default/default-command-error-observer.d.ts +14 -0
  531. package/dist/runtime/server/default/default-command-error-observer.js +40 -0
  532. package/dist/runtime/server/default/default-net-event-security-observer.d.ts +15 -0
  533. package/dist/runtime/server/default/default-net-event-security-observer.js +25 -0
  534. package/dist/runtime/server/default/default-principal.provider.d.ts +13 -0
  535. package/dist/runtime/server/default/default-principal.provider.js +35 -0
  536. package/dist/runtime/server/default/default-security.handler.d.ts +19 -0
  537. package/dist/runtime/server/default/default-security.handler.js +36 -0
  538. package/dist/runtime/server/devmode/contracts/IDevModeBridge.d.ts +36 -0
  539. package/dist/runtime/server/devmode/contracts/IDevModeBridge.js +8 -0
  540. package/dist/runtime/server/devmode/contracts/IDevModeInspector.d.ts +52 -0
  541. package/dist/runtime/server/devmode/contracts/IDevModeInspector.js +8 -0
  542. package/dist/runtime/server/devmode/contracts/IDevModeInterceptor.d.ts +41 -0
  543. package/dist/runtime/server/devmode/contracts/IDevModeInterceptor.js +7 -0
  544. package/dist/runtime/server/devmode/contracts/index.d.ts +3 -0
  545. package/dist/runtime/server/devmode/contracts/index.js +3 -0
  546. package/dist/runtime/server/devmode/dev-mode.service.d.ts +109 -0
  547. package/dist/runtime/server/devmode/dev-mode.service.js +290 -0
  548. package/dist/runtime/server/devmode/event-interceptor.service.d.ts +80 -0
  549. package/dist/runtime/server/devmode/event-interceptor.service.js +233 -0
  550. package/dist/runtime/server/devmode/index.d.ts +6 -0
  551. package/dist/runtime/server/devmode/index.js +7 -0
  552. package/dist/runtime/server/devmode/player-simulator.service.d.ts +66 -0
  553. package/dist/runtime/server/devmode/player-simulator.service.js +199 -0
  554. package/dist/runtime/server/devmode/state-inspector.service.d.ts +57 -0
  555. package/dist/runtime/server/devmode/state-inspector.service.js +175 -0
  556. package/dist/runtime/server/devmode/types.d.ts +197 -0
  557. package/dist/runtime/server/devmode/types.js +22 -0
  558. package/dist/runtime/server/entities/index.d.ts +3 -0
  559. package/dist/runtime/server/entities/index.js +3 -0
  560. package/dist/runtime/server/entities/npc.d.ts +257 -0
  561. package/dist/runtime/server/entities/npc.js +307 -0
  562. package/dist/runtime/server/entities/player.d.ts +236 -0
  563. package/dist/runtime/server/entities/player.js +351 -0
  564. package/dist/runtime/server/entities/vehicle.d.ts +113 -0
  565. package/dist/runtime/server/entities/vehicle.js +245 -0
  566. package/dist/runtime/server/error-handler.d.ts +2 -0
  567. package/dist/runtime/server/error-handler.js +50 -0
  568. package/dist/runtime/server/helpers/command-validation.helper.d.ts +3 -0
  569. package/dist/runtime/server/helpers/command-validation.helper.js +73 -0
  570. package/dist/runtime/server/helpers/function-helper.d.ts +6 -0
  571. package/dist/runtime/server/helpers/function-helper.js +28 -0
  572. package/dist/runtime/server/helpers/normalize-app-error.d.ts +9 -0
  573. package/dist/runtime/server/helpers/normalize-app-error.js +17 -0
  574. package/dist/runtime/server/helpers/resolve-method.d.ts +5 -0
  575. package/dist/runtime/server/helpers/resolve-method.js +25 -0
  576. package/dist/runtime/server/implementations/local/channel.local.d.ts +32 -0
  577. package/dist/runtime/server/implementations/local/channel.local.js +185 -0
  578. package/dist/runtime/server/implementations/local/command.local.d.ts +57 -0
  579. package/dist/runtime/server/implementations/local/command.local.js +110 -0
  580. package/dist/runtime/server/implementations/local/player.local.d.ts +114 -0
  581. package/dist/runtime/server/implementations/local/player.local.js +216 -0
  582. package/dist/runtime/server/implementations/local/principal.local.d.ts +28 -0
  583. package/dist/runtime/server/implementations/local/principal.local.js +120 -0
  584. package/dist/runtime/server/implementations/remote/channel.remote.d.ts +48 -0
  585. package/dist/runtime/server/implementations/remote/channel.remote.js +168 -0
  586. package/dist/runtime/server/implementations/remote/command.remote.d.ts +66 -0
  587. package/dist/runtime/server/implementations/remote/command.remote.js +159 -0
  588. package/dist/runtime/server/implementations/remote/player.remote.d.ts +62 -0
  589. package/dist/runtime/server/implementations/remote/player.remote.js +199 -0
  590. package/dist/runtime/server/implementations/remote/principal.remote.d.ts +33 -0
  591. package/dist/runtime/server/implementations/remote/principal.remote.js +97 -0
  592. package/dist/runtime/server/index.d.ts +9 -0
  593. package/dist/runtime/server/index.js +4 -0
  594. package/dist/runtime/server/library/create-server-library.d.ts +13 -0
  595. package/dist/runtime/server/library/create-server-library.js +63 -0
  596. package/dist/runtime/server/library/index.d.ts +4 -0
  597. package/dist/runtime/server/library/index.js +2 -0
  598. package/dist/runtime/server/library/plugin/index.d.ts +4 -0
  599. package/dist/runtime/server/library/plugin/index.js +4 -0
  600. package/dist/runtime/server/library/plugin/plugin-context.d.ts +10 -0
  601. package/dist/runtime/server/library/plugin/plugin-context.js +0 -0
  602. package/dist/runtime/server/library/plugin/plugin-registry.d.ts +7 -0
  603. package/dist/runtime/server/library/plugin/plugin-registry.js +25 -0
  604. package/dist/runtime/server/library/plugin/plugin.interface.d.ts +19 -0
  605. package/dist/runtime/server/library/plugin/plugin.interface.js +0 -0
  606. package/dist/runtime/server/library/plugin/server-plugin-api.d.ts +5 -0
  607. package/dist/runtime/server/library/plugin/server-plugin-api.js +0 -0
  608. package/dist/runtime/server/ports/authorization.api-port.d.ts +149 -0
  609. package/dist/runtime/server/ports/authorization.api-port.js +28 -0
  610. package/dist/runtime/server/ports/channel.api-port.d.ts +218 -0
  611. package/dist/runtime/server/ports/channel.api-port.js +2 -0
  612. package/dist/runtime/server/ports/internal/command-execution.port.d.ts +48 -0
  613. package/dist/runtime/server/ports/internal/command-execution.port.js +11 -0
  614. package/dist/runtime/server/ports/internal/player-session-lifecycle.port.d.ts +37 -0
  615. package/dist/runtime/server/ports/internal/player-session-lifecycle.port.js +12 -0
  616. package/dist/runtime/server/ports/players.api-port.d.ts +108 -0
  617. package/dist/runtime/server/ports/players.api-port.js +19 -0
  618. package/dist/runtime/server/runtime.d.ts +195 -0
  619. package/dist/runtime/server/runtime.js +197 -0
  620. package/dist/runtime/server/server.runtime.d.ts +7 -0
  621. package/dist/runtime/server/server.runtime.js +34 -0
  622. package/dist/runtime/server/services/appearance.service.d.ts +4 -0
  623. package/dist/runtime/server/services/appearance.service.js +130 -0
  624. package/dist/runtime/server/services/index.d.ts +6 -0
  625. package/dist/runtime/server/services/index.js +6 -0
  626. package/dist/runtime/server/services/parallel/native-worker.entry.d.ts +1 -0
  627. package/dist/runtime/server/services/parallel/native-worker.entry.js +10 -0
  628. package/dist/runtime/server/services/parallel/worker-pool.d.ts +79 -0
  629. package/dist/runtime/server/services/parallel/worker-pool.js +428 -0
  630. package/dist/runtime/server/services/parallel/worker.d.ts +22 -0
  631. package/dist/runtime/server/services/parallel/worker.js +48 -0
  632. package/dist/runtime/server/services/persistence.service.d.ts +59 -0
  633. package/dist/runtime/server/services/persistence.service.js +161 -0
  634. package/dist/runtime/server/services/rate-limiter.service.d.ts +23 -0
  635. package/dist/runtime/server/services/rate-limiter.service.js +52 -0
  636. package/dist/runtime/server/services/services.register.d.ts +11 -0
  637. package/dist/runtime/server/services/services.register.js +140 -0
  638. package/dist/runtime/server/services/session-recovery.local.d.ts +39 -0
  639. package/dist/runtime/server/services/session-recovery.local.js +108 -0
  640. package/dist/runtime/server/setup.d.ts +9 -0
  641. package/dist/runtime/server/setup.js +25 -0
  642. package/dist/runtime/server/system/managers/binary-process.manager.d.ts +19 -0
  643. package/dist/runtime/server/system/managers/binary-process.manager.js +312 -0
  644. package/dist/runtime/server/system/metadata-server.keys.d.ts +18 -0
  645. package/dist/runtime/server/system/metadata-server.keys.js +18 -0
  646. package/dist/runtime/server/system/processors/command.processor.d.ts +16 -0
  647. package/dist/runtime/server/system/processors/command.processor.js +62 -0
  648. package/dist/runtime/server/system/processors/export.processor.d.ts +10 -0
  649. package/dist/runtime/server/system/processors/export.processor.js +38 -0
  650. package/dist/runtime/server/system/processors/internalEvent.processor.d.ts +7 -0
  651. package/dist/runtime/server/system/processors/internalEvent.processor.js +36 -0
  652. package/dist/runtime/server/system/processors/libraryEvent.processor.d.ts +6 -0
  653. package/dist/runtime/server/system/processors/libraryEvent.processor.js +38 -0
  654. package/dist/runtime/server/system/processors/netEvent.processor.d.ts +23 -0
  655. package/dist/runtime/server/system/processors/netEvent.processor.js +243 -0
  656. package/dist/runtime/server/system/processors/onRpc.processor.d.ts +12 -0
  657. package/dist/runtime/server/system/processors/onRpc.processor.js +142 -0
  658. package/dist/runtime/server/system/processors/runtimeEvent.processor.d.ts +11 -0
  659. package/dist/runtime/server/system/processors/runtimeEvent.processor.js +48 -0
  660. package/dist/runtime/server/system/processors/tick.processor.d.ts +8 -0
  661. package/dist/runtime/server/system/processors/tick.processor.js +44 -0
  662. package/dist/runtime/server/system/processors.register.d.ts +2 -0
  663. package/dist/runtime/server/system/processors.register.js +43 -0
  664. package/dist/runtime/server/system/schema-generator.d.ts +2 -0
  665. package/dist/runtime/server/system/schema-generator.js +38 -0
  666. package/dist/runtime/server/types/channel.types.d.ts +44 -0
  667. package/dist/runtime/server/types/channel.types.js +10 -0
  668. package/dist/runtime/server/types/core-exports.types.d.ts +291 -0
  669. package/dist/runtime/server/types/core-exports.types.js +0 -0
  670. package/dist/runtime/server/types/framework-events.types.d.ts +22 -0
  671. package/dist/runtime/server/types/framework-events.types.js +0 -0
  672. package/dist/runtime/server/types/index.d.ts +9 -0
  673. package/dist/runtime/server/types/index.js +9 -0
  674. package/dist/runtime/server/types/linked-id.d.ts +6 -0
  675. package/dist/runtime/server/types/linked-id.js +0 -0
  676. package/dist/runtime/server/types/npc.types.d.ts +36 -0
  677. package/dist/runtime/server/types/npc.types.js +0 -0
  678. package/dist/runtime/server/types/parallel.types.d.ts +191 -0
  679. package/dist/runtime/server/types/parallel.types.js +5 -0
  680. package/dist/runtime/server/types/player-session.types.d.ts +11 -0
  681. package/dist/runtime/server/types/player-session.types.js +0 -0
  682. package/dist/runtime/server/types/principal.type.d.ts +32 -0
  683. package/dist/runtime/server/types/principal.type.js +0 -0
  684. package/dist/runtime/server/types/vehicle.types.d.ts +152 -0
  685. package/dist/runtime/server/types/vehicle.types.js +0 -0
  686. package/dist/runtime/shared/helpers/process-tuple-schema.d.ts +2 -0
  687. package/dist/runtime/shared/helpers/process-tuple-schema.js +29 -0
  688. package/package.json +61 -46
  689. package/dist/client/client-bootstrap.d.ts +0 -1
  690. package/dist/client/client-bootstrap.js +0 -50
  691. package/dist/client/client-container.js +0 -6
  692. package/dist/client/client-core.d.ts +0 -1
  693. package/dist/client/client-core.js +0 -7
  694. package/dist/client/controllers/spawner.controller.d.ts +0 -12
  695. package/dist/client/controllers/spawner.controller.js +0 -51
  696. package/dist/client/decorators/controller.d.ts +0 -3
  697. package/dist/client/decorators/controller.js +0 -14
  698. package/dist/client/decorators/export.d.ts +0 -7
  699. package/dist/client/decorators/export.js +0 -15
  700. package/dist/client/decorators/gameEvent.d.ts +0 -47
  701. package/dist/client/decorators/gameEvent.js +0 -54
  702. package/dist/client/decorators/index.d.ts +0 -10
  703. package/dist/client/decorators/index.js +0 -26
  704. package/dist/client/decorators/interval.d.ts +0 -7
  705. package/dist/client/decorators/interval.js +0 -15
  706. package/dist/client/decorators/key.d.ts +0 -2
  707. package/dist/client/decorators/key.js +0 -10
  708. package/dist/client/decorators/localEvent.d.ts +0 -7
  709. package/dist/client/decorators/localEvent.js +0 -15
  710. package/dist/client/decorators/nui.d.ts +0 -1
  711. package/dist/client/decorators/nui.js +0 -9
  712. package/dist/client/decorators/onNet.d.ts +0 -1
  713. package/dist/client/decorators/onNet.js +0 -9
  714. package/dist/client/decorators/resourceLifecycle.d.ts +0 -11
  715. package/dist/client/decorators/resourceLifecycle.js +0 -24
  716. package/dist/client/decorators/tick.d.ts +0 -1
  717. package/dist/client/decorators/tick.js +0 -9
  718. package/dist/client/index.d.ts +0 -7
  719. package/dist/client/index.js +0 -23
  720. package/dist/client/interfaces/appearance.interface.d.ts +0 -19
  721. package/dist/client/interfaces/appearance.interface.js +0 -2
  722. package/dist/client/player/player.d.ts +0 -262
  723. package/dist/client/player/player.js +0 -480
  724. package/dist/client/player/player.loader.d.ts +0 -1
  725. package/dist/client/player/player.loader.js +0 -22
  726. package/dist/client/services/appearance.service.d.ts +0 -6
  727. package/dist/client/services/appearance.service.js +0 -89
  728. package/dist/client/services/blip.service.d.ts +0 -112
  729. package/dist/client/services/blip.service.js +0 -215
  730. package/dist/client/services/index.d.ts +0 -9
  731. package/dist/client/services/index.js +0 -25
  732. package/dist/client/services/marker.service.d.ts +0 -94
  733. package/dist/client/services/marker.service.js +0 -153
  734. package/dist/client/services/notification.service.d.ts +0 -76
  735. package/dist/client/services/notification.service.js +0 -111
  736. package/dist/client/services/ped.service.d.ts +0 -182
  737. package/dist/client/services/ped.service.js +0 -302
  738. package/dist/client/services/progress.service.d.ts +0 -82
  739. package/dist/client/services/progress.service.js +0 -210
  740. package/dist/client/services/spawn.service.d.ts +0 -73
  741. package/dist/client/services/spawn.service.js +0 -261
  742. package/dist/client/services/streaming.service.d.ts +0 -165
  743. package/dist/client/services/streaming.service.js +0 -341
  744. package/dist/client/services/textui.service.d.ts +0 -82
  745. package/dist/client/services/textui.service.js +0 -156
  746. package/dist/client/services/vehicle.service.d.ts +0 -168
  747. package/dist/client/services/vehicle.service.js +0 -296
  748. package/dist/client/system/metadata-client.keys.d.ts +0 -13
  749. package/dist/client/system/metadata-client.keys.js +0 -16
  750. package/dist/client/system/processors/export.processor.d.ts +0 -7
  751. package/dist/client/system/processors/export.processor.js +0 -39
  752. package/dist/client/system/processors/gameEvent.processor.d.ts +0 -10
  753. package/dist/client/system/processors/gameEvent.processor.js +0 -58
  754. package/dist/client/system/processors/interval.processor.d.ts +0 -7
  755. package/dist/client/system/processors/interval.processor.js +0 -43
  756. package/dist/client/system/processors/key.processor.d.ts +0 -8
  757. package/dist/client/system/processors/key.processor.js +0 -27
  758. package/dist/client/system/processors/localEvent.processor.d.ts +0 -7
  759. package/dist/client/system/processors/localEvent.processor.js +0 -38
  760. package/dist/client/system/processors/netEvent.processor.d.ts +0 -7
  761. package/dist/client/system/processors/netEvent.processor.js +0 -38
  762. package/dist/client/system/processors/nui.processor.d.ts +0 -7
  763. package/dist/client/system/processors/nui.processor.js +0 -40
  764. package/dist/client/system/processors/resourceLifecycle.processor.d.ts +0 -9
  765. package/dist/client/system/processors/resourceLifecycle.processor.js +0 -69
  766. package/dist/client/system/processors/tick.processor.d.ts +0 -5
  767. package/dist/client/system/processors/tick.processor.js +0 -37
  768. package/dist/client/system/processors.register.d.ts +0 -1
  769. package/dist/client/system/processors.register.js +0 -27
  770. package/dist/client/types/game-events.d.ts +0 -126
  771. package/dist/client/types/game-events.js +0 -83
  772. package/dist/client/types/index.js +0 -17
  773. package/dist/client/ui-bridge.d.ts +0 -116
  774. package/dist/client/ui-bridge.js +0 -201
  775. package/dist/server/bootstrap.d.ts +0 -16
  776. package/dist/server/bootstrap.js +0 -57
  777. package/dist/server/bus/core-event-bus.d.ts +0 -6
  778. package/dist/server/bus/core-event-bus.js +0 -31
  779. package/dist/server/configs/api.config.d.ts +0 -71
  780. package/dist/server/configs/api.config.js +0 -81
  781. package/dist/server/configs/config.base.d.ts +0 -63
  782. package/dist/server/configs/config.base.js +0 -64
  783. package/dist/server/configs/index.d.ts +0 -2
  784. package/dist/server/configs/index.js +0 -18
  785. package/dist/server/container.d.ts +0 -2
  786. package/dist/server/container.js +0 -6
  787. package/dist/server/controllers/chat.controller.d.ts +0 -10
  788. package/dist/server/controllers/chat.controller.js +0 -50
  789. package/dist/server/controllers/command.controller.d.ts +0 -7
  790. package/dist/server/controllers/command.controller.js +0 -47
  791. package/dist/server/controllers/session.controller.d.ts +0 -9
  792. package/dist/server/controllers/session.controller.js +0 -70
  793. package/dist/server/core.d.ts +0 -1
  794. package/dist/server/core.js +0 -7
  795. package/dist/server/database/adapters/oxmysql.adapter.d.ts +0 -89
  796. package/dist/server/database/adapters/oxmysql.adapter.js +0 -149
  797. package/dist/server/database/database.contract.d.ts +0 -128
  798. package/dist/server/database/database.contract.js +0 -29
  799. package/dist/server/database/database.service.d.ts +0 -216
  800. package/dist/server/database/database.service.js +0 -301
  801. package/dist/server/database/index.d.ts +0 -53
  802. package/dist/server/database/index.js +0 -70
  803. package/dist/server/database/types.d.ts +0 -67
  804. package/dist/server/database/types.js +0 -7
  805. package/dist/server/database.d.ts +0 -7
  806. package/dist/server/database.js +0 -23
  807. package/dist/server/decorators/bind.d.ts +0 -2
  808. package/dist/server/decorators/bind.js +0 -15
  809. package/dist/server/decorators/command.d.ts +0 -49
  810. package/dist/server/decorators/command.js +0 -23
  811. package/dist/server/decorators/controller.d.ts +0 -25
  812. package/dist/server/decorators/controller.js +0 -36
  813. package/dist/server/decorators/export.d.ts +0 -39
  814. package/dist/server/decorators/export.js +0 -47
  815. package/dist/server/decorators/guard.d.ts +0 -56
  816. package/dist/server/decorators/guard.js +0 -82
  817. package/dist/server/decorators/index.d.ts +0 -10
  818. package/dist/server/decorators/index.js +0 -29
  819. package/dist/server/decorators/onFiveMEvent.d.ts +0 -6
  820. package/dist/server/decorators/onFiveMEvent.js +0 -14
  821. package/dist/server/decorators/onFrameworkEvent.d.ts +0 -22
  822. package/dist/server/decorators/onFrameworkEvent.js +0 -29
  823. package/dist/server/decorators/onNet.d.ts +0 -58
  824. package/dist/server/decorators/onNet.js +0 -57
  825. package/dist/server/decorators/onTick.d.ts +0 -32
  826. package/dist/server/decorators/onTick.js +0 -40
  827. package/dist/server/decorators/public.d.ts +0 -27
  828. package/dist/server/decorators/public.js +0 -36
  829. package/dist/server/decorators/requiresState.d.ts +0 -56
  830. package/dist/server/decorators/requiresState.js +0 -63
  831. package/dist/server/decorators/throttle.d.ts +0 -48
  832. package/dist/server/decorators/throttle.js +0 -63
  833. package/dist/server/decorators/utils.d.ts +0 -57
  834. package/dist/server/decorators/utils.js +0 -63
  835. package/dist/server/entities/index.d.ts +0 -1
  836. package/dist/server/entities/index.js +0 -17
  837. package/dist/server/entities/player.d.ts +0 -157
  838. package/dist/server/entities/player.js +0 -217
  839. package/dist/server/error-handler.d.ts +0 -2
  840. package/dist/server/error-handler.js +0 -43
  841. package/dist/server/helpers/resolve-method.d.ts +0 -5
  842. package/dist/server/helpers/resolve-method.js +0 -18
  843. package/dist/server/index.d.ts +0 -10
  844. package/dist/server/index.js +0 -31
  845. package/dist/server/loaders/exports.loader.js +0 -23
  846. package/dist/server/loaders/playerSession.loader.d.ts +0 -1
  847. package/dist/server/loaders/playerSession.loader.js +0 -51
  848. package/dist/server/services/access-control.service.d.ts +0 -56
  849. package/dist/server/services/access-control.service.js +0 -99
  850. package/dist/server/services/chat.service.d.ts +0 -7
  851. package/dist/server/services/chat.service.js +0 -31
  852. package/dist/server/services/command.service.d.ts +0 -15
  853. package/dist/server/services/command.service.js +0 -77
  854. package/dist/server/services/config.service.d.ts +0 -75
  855. package/dist/server/services/config.service.js +0 -116
  856. package/dist/server/services/default/default-security.handler.d.ts +0 -6
  857. package/dist/server/services/default/default-security.handler.js +0 -26
  858. package/dist/server/services/http/http.service.d.ts +0 -50
  859. package/dist/server/services/http/http.service.js +0 -126
  860. package/dist/server/services/index.d.ts +0 -10
  861. package/dist/server/services/index.js +0 -26
  862. package/dist/server/services/parallel/index.d.ts +0 -49
  863. package/dist/server/services/parallel/index.js +0 -67
  864. package/dist/server/services/parallel/parallel-compute.service.d.ts +0 -132
  865. package/dist/server/services/parallel/parallel-compute.service.js +0 -449
  866. package/dist/server/services/parallel/types.d.ts +0 -188
  867. package/dist/server/services/parallel/types.js +0 -7
  868. package/dist/server/services/parallel/worker-pool.d.ts +0 -83
  869. package/dist/server/services/parallel/worker-pool.js +0 -350
  870. package/dist/server/services/parallel/worker.d.ts +0 -19
  871. package/dist/server/services/parallel/worker.js +0 -49
  872. package/dist/server/services/persistence.service.d.ts +0 -59
  873. package/dist/server/services/persistence.service.js +0 -166
  874. package/dist/server/services/player.service.d.ts +0 -96
  875. package/dist/server/services/player.service.js +0 -132
  876. package/dist/server/services/rate-limiter.service.d.ts +0 -5
  877. package/dist/server/services/rate-limiter.service.js +0 -39
  878. package/dist/server/services/registers.d.ts +0 -1
  879. package/dist/server/services/registers.js +0 -18
  880. package/dist/server/setup.d.ts +0 -9
  881. package/dist/server/setup.js +0 -28
  882. package/dist/server/system/metadata-server.keys.d.ts +0 -10
  883. package/dist/server/system/metadata-server.keys.js +0 -13
  884. package/dist/server/system/processors/command.processor.d.ts +0 -9
  885. package/dist/server/system/processors/command.processor.js +0 -30
  886. package/dist/server/system/processors/coreEvent.processor.d.ts +0 -7
  887. package/dist/server/system/processors/coreEvent.processor.js +0 -41
  888. package/dist/server/system/processors/export.processor.d.ts +0 -7
  889. package/dist/server/system/processors/export.processor.js +0 -30
  890. package/dist/server/system/processors/fivemEvent.processor.d.ts +0 -7
  891. package/dist/server/system/processors/fivemEvent.processor.js +0 -40
  892. package/dist/server/system/processors/netEvent.processor.d.ts +0 -11
  893. package/dist/server/system/processors/netEvent.processor.js +0 -103
  894. package/dist/server/system/processors/tick.processor.d.ts +0 -5
  895. package/dist/server/system/processors/tick.processor.js +0 -36
  896. package/dist/server/system/processors.register.d.ts +0 -1
  897. package/dist/server/system/processors.register.js +0 -23
  898. package/dist/server/system/schema-generator.d.ts +0 -2
  899. package/dist/server/system/schema-generator.js +0 -34
  900. package/dist/server/templates/admin/admin.controller-template.d.ts +0 -12
  901. package/dist/server/templates/admin/admin.controller-template.js +0 -2
  902. package/dist/server/templates/auth/auth-provider.contract.d.ts +0 -58
  903. package/dist/server/templates/auth/auth-provider.contract.js +0 -23
  904. package/dist/server/templates/index.d.ts +0 -8
  905. package/dist/server/templates/index.js +0 -21
  906. package/dist/server/templates/persistence/index.d.ts +0 -30
  907. package/dist/server/templates/persistence/index.js +0 -34
  908. package/dist/server/templates/persistence/player-persistence.contract.d.ts +0 -86
  909. package/dist/server/templates/persistence/player-persistence.contract.js +0 -52
  910. package/dist/server/templates/repository/index.d.ts +0 -57
  911. package/dist/server/templates/repository/index.js +0 -61
  912. package/dist/server/templates/repository/repository.contract.d.ts +0 -224
  913. package/dist/server/templates/repository/repository.contract.js +0 -342
  914. package/dist/server/templates/repository/repository.types.d.ts +0 -51
  915. package/dist/server/templates/repository/repository.types.js +0 -7
  916. package/dist/server/templates/security/permission.types.d.ts +0 -32
  917. package/dist/server/templates/security/permission.types.js +0 -2
  918. package/dist/server/templates/security/principal-provider.contract.d.ts +0 -43
  919. package/dist/server/templates/security/principal-provider.contract.js +0 -19
  920. package/dist/server/templates/security/security-handler.contract.d.ts +0 -5
  921. package/dist/server/templates/security/security-handler.contract.js +0 -6
  922. package/dist/server/types/core-events.d.ts +0 -22
  923. package/dist/server/types/core-events.js +0 -2
  924. package/dist/server/types/security.types.js +0 -2
  925. package/dist/shared/index.d.ts +0 -1
  926. package/dist/shared/index.js +0 -17
  927. package/dist/shared/logger/core-logger.d.ts +0 -35
  928. package/dist/shared/logger/core-logger.js +0 -52
  929. package/dist/shared/logger/index.d.ts +0 -11
  930. package/dist/shared/logger/index.js +0 -26
  931. package/dist/shared/logger/logger.config.d.ts +0 -47
  932. package/dist/shared/logger/logger.config.js +0 -33
  933. package/dist/shared/logger/logger.service.d.ts +0 -161
  934. package/dist/shared/logger/logger.service.js +0 -279
  935. package/dist/shared/logger/logger.types.js +0 -74
  936. package/dist/shared/logger/transports/buffered.transport.d.ts +0 -88
  937. package/dist/shared/logger/transports/buffered.transport.js +0 -174
  938. package/dist/shared/logger/transports/console.transport.d.ts +0 -37
  939. package/dist/shared/logger/transports/console.transport.js +0 -134
  940. package/dist/shared/logger/transports/index.d.ts +0 -3
  941. package/dist/shared/logger/transports/index.js +0 -19
  942. package/dist/shared/logger/transports/transport.interface.d.ts +0 -40
  943. package/dist/shared/logger/transports/transport.interface.js +0 -2
  944. package/dist/system/class-constructor.js +0 -2
  945. package/dist/system/decorator-processor.js +0 -2
  946. package/dist/system/metadata.scanner.d.ts +0 -7
  947. package/dist/system/metadata.scanner.js +0 -45
  948. package/dist/utils/errors.d.ts +0 -14
  949. package/dist/utils/errors.js +0 -25
  950. package/dist/utils/index.d.ts +0 -4
  951. package/dist/utils/index.js +0 -20
  952. package/dist/utils/result.d.ts +0 -12
  953. package/dist/utils/result.js +0 -10
  954. package/dist/utils/rgb.d.ts +0 -5
  955. package/dist/utils/rgb.js +0 -2
  956. package/dist/utils/vector3.d.ts +0 -13
  957. package/dist/utils/vector3.js +0 -27
  958. /package/dist/{server/loaders/exports.loader.d.ts → adapters/contracts/client/spawn/types.js} +0 -0
  959. /package/dist/{system → kernel/di}/class-constructor.d.ts +0 -0
  960. /package/dist/{system → kernel/di}/decorator-processor.d.ts +0 -0
  961. /package/dist/{server/types → kernel/error}/security.types.d.ts +0 -0
  962. /package/dist/{shared → kernel}/logger/logger.types.d.ts +0 -0
  963. /package/dist/{client → runtime/client}/client-container.d.ts +0 -0
  964. /package/dist/{client → runtime/client}/types/index.d.ts +0 -0
@@ -0,0 +1,149 @@
1
+ import { Principal } from '../types/principal.type';
2
+ import { GuardOptions } from '../decorators/guard';
3
+ import { Player } from '../entities';
4
+ /**
5
+ * Core port that provides access to player authorization and permissions.
6
+ *
7
+ * @remarks
8
+ * This port defines a framework-owned boundary for querying permission-related data
9
+ * regardless of the current runtime mode (CORE, RESOURCE, etc.).
10
+ *
11
+ * Implementations of this port are responsible for resolving permission information
12
+ * from the authoritative source (local provider, remote core exports, etc.).
13
+ *
14
+ * **Mode Differences:**
15
+ * - **CORE/STANDALONE**: Uses the user-provided PrincipalProviderContract directly
16
+ * - **RESOURCE**: Delegates to CORE via exports
17
+ *
18
+ * **Usage:**
19
+ * ```typescript
20
+ * @injectable()
21
+ * class MyService {
22
+ * constructor(private principal: PrincipalPort) {}
23
+ *
24
+ * async canBan(player: Player): Promise<boolean> {
25
+ * return await this.principal.hasPermission(player, 'admin.ban')
26
+ * }
27
+ * }
28
+ * ```
29
+ */
30
+ export declare abstract class Authorization {
31
+ /**
32
+ * Gets the full Principal object for a player.
33
+ *
34
+ * @param player - The player entity
35
+ * @returns Principal data or null if not authenticated
36
+ */
37
+ abstract getPrincipal(player: Player): Promise<Principal | null>;
38
+ /**
39
+ * Gets Principal by account ID (works for offline players too).
40
+ *
41
+ * @param accountId - Account identifier
42
+ * @returns Principal data or null
43
+ */
44
+ abstract getPrincipalByAccountId(accountId: string): Promise<Principal | null>;
45
+ /**
46
+ * Forces a refresh of the player's permissions from persistence.
47
+ *
48
+ * @remarks
49
+ * Use this after promoting/demoting a player while they're online.
50
+ *
51
+ * @param player - The player to refresh
52
+ */
53
+ abstract refreshPrincipal(player: Player): Promise<void>;
54
+ /**
55
+ * Checks if player has a specific permission.
56
+ *
57
+ * @remarks
58
+ * Supports wildcard '*' permission for super-admin access.
59
+ *
60
+ * @param player - The player entity
61
+ * @param permission - Permission string to check
62
+ * @returns True if player has permission
63
+ */
64
+ abstract hasPermission(player: Player, permission: string): Promise<boolean>;
65
+ /**
66
+ * Checks if player has at least the required rank.
67
+ *
68
+ * @remarks
69
+ * Uses numeric comparison: playerRank >= requiredRank
70
+ *
71
+ * @param player - The player entity
72
+ * @param requiredRank - Minimum rank value
73
+ * @returns True if playerRank >= requiredRank
74
+ */
75
+ abstract hasRank(player: Player, requiredRank: number): Promise<boolean>;
76
+ /**
77
+ * Checks if player has ANY of the specified permissions.
78
+ *
79
+ * @param player - The player entity
80
+ * @param permissions - Array of permissions to check
81
+ * @returns True if player has at least one permission
82
+ */
83
+ abstract hasAnyPermission(player: Player, permissions: string[]): Promise<boolean>;
84
+ /**
85
+ * Checks if player has ALL of the specified permissions.
86
+ *
87
+ * @param player - The player entity
88
+ * @param permissions - Array of permissions to check
89
+ * @returns True if player has all permissions
90
+ */
91
+ abstract hasAllPermissions(player: Player, permissions: string[]): Promise<boolean>;
92
+ /**
93
+ * Gets all permissions for a player.
94
+ *
95
+ * @param player - The player entity
96
+ * @returns Array of permission strings
97
+ */
98
+ abstract getPermissions(player: Player): Promise<string[]>;
99
+ /**
100
+ * Gets the rank value for a player.
101
+ *
102
+ * @param player - The player entity
103
+ * @returns Rank number or null if not set
104
+ */
105
+ abstract getRank(player: Player): Promise<number | null>;
106
+ /**
107
+ * Gets the principal name/role name for a player.
108
+ *
109
+ * @param player - The player entity
110
+ * @returns Role name or null
111
+ */
112
+ abstract getPrincipalName(player: Player): Promise<string | null>;
113
+ /**
114
+ * Gets principal metadata for a player.
115
+ *
116
+ * @param player - The player entity
117
+ * @param key - Metadata key
118
+ * @returns Metadata value or null
119
+ */
120
+ abstract getPrincipalMeta(player: Player, key: string): Promise<unknown>;
121
+ /**
122
+ * Enforces access control requirements, throwing on failure.
123
+ *
124
+ * @remarks
125
+ * This is the primary method used by `@Guard` decorator and security validation.
126
+ * It validates rank and/or permission requirements and throws `AppError` if
127
+ * the player doesn't meet the criteria.
128
+ *
129
+ * **Validation Order:**
130
+ * 1. Rank check (if `rank` specified)
131
+ * 2. Permission check (if `permission` specified)
132
+ *
133
+ * @param player - The player entity to validate
134
+ * @param requirements - Guard options containing rank and/or permission requirements
135
+ *
136
+ * @throws AppError - `AUTH:UNAUTHORIZED` if player has no principal
137
+ * @throws AppError - `GAME:NO_RANK_IN_PRINCIPAL` if rank check requested but principal has no rank
138
+ * @throws AppError - `AUTH:PERMISSION_DENIED` if player doesn't meet requirements
139
+ *
140
+ * @example
141
+ * ```typescript
142
+ * // In a service or controller
143
+ * await this.principal.enforce(player, { rank: 5 })
144
+ * await this.principal.enforce(player, { permission: 'admin.ban' })
145
+ * await this.principal.enforce(player, { rank: 3, permission: 'mod.kick' })
146
+ * ```
147
+ */
148
+ abstract enforce(player: Player, requirements: GuardOptions): Promise<void>;
149
+ }
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Core port that provides access to player authorization and permissions.
3
+ *
4
+ * @remarks
5
+ * This port defines a framework-owned boundary for querying permission-related data
6
+ * regardless of the current runtime mode (CORE, RESOURCE, etc.).
7
+ *
8
+ * Implementations of this port are responsible for resolving permission information
9
+ * from the authoritative source (local provider, remote core exports, etc.).
10
+ *
11
+ * **Mode Differences:**
12
+ * - **CORE/STANDALONE**: Uses the user-provided PrincipalProviderContract directly
13
+ * - **RESOURCE**: Delegates to CORE via exports
14
+ *
15
+ * **Usage:**
16
+ * ```typescript
17
+ * @injectable()
18
+ * class MyService {
19
+ * constructor(private principal: PrincipalPort) {}
20
+ *
21
+ * async canBan(player: Player): Promise<boolean> {
22
+ * return await this.principal.hasPermission(player, 'admin.ban')
23
+ * }
24
+ * }
25
+ * ```
26
+ */
27
+ export class Authorization {
28
+ }
@@ -0,0 +1,218 @@
1
+ import { RGB } from 'src/kernel';
2
+ import { Channel } from '../concepts/channel';
3
+ import { Player } from '../entities';
4
+ import { ChannelMetadata, ChannelType, IChannelValidator } from '../types';
5
+ export declare abstract class Channels {
6
+ /**
7
+ * Sets a custom validator for channel operations.
8
+ *
9
+ * @remarks
10
+ * Validators control who can subscribe to channels and who can broadcast messages.
11
+ * Only works in CORE/STANDALONE mode. In RESOURCE mode, validators must be set in CORE.
12
+ *
13
+ * @param validator - Custom validator implementing IChannelValidator
14
+ *
15
+ * @example
16
+ * ```typescript
17
+ * channels.setValidator({
18
+ * canSubscribe: (player, channelId) => {
19
+ * return !player.hasState('banned')
20
+ * },
21
+ * canBroadcast: (player, channelId) => {
22
+ * return !player.hasState('muted')
23
+ * }
24
+ * })
25
+ * ```
26
+ */
27
+ abstract setValidator(validator: IChannelValidator): void;
28
+ /**
29
+ * Creates a new channel.
30
+ *
31
+ * @param id - Unique channel identifier (e.g., 'group:police', 'radio:100')
32
+ * @param metadata - Channel configuration (type, persistence, etc.)
33
+ * @param maxSubscribers - Optional maximum number of subscribers
34
+ * @returns The created channel
35
+ * @throws Error if channel with the same ID already exists
36
+ *
37
+ * @example
38
+ * ```typescript
39
+ * const channel = channels.create('radio:100', {
40
+ * type: ChannelType.RADIO,
41
+ * frequency: 100,
42
+ * persistent: true
43
+ * })
44
+ * ```
45
+ */
46
+ abstract create(id: string, metadata: ChannelMetadata, maxSubscribers?: number): Channel;
47
+ /**
48
+ * Creates a private channel for specific players.
49
+ *
50
+ * @remarks
51
+ * Automatically subscribes all provided players to the channel.
52
+ * Channel ID is auto-generated and non-persistent.
53
+ *
54
+ * @param players - Array of players to include in the private channel
55
+ * @param metadata - Channel configuration (type should be PRIVATE)
56
+ * @returns The created private channel with all players subscribed
57
+ *
58
+ * @example
59
+ * ```typescript
60
+ * const privateChannel = channels.createPrivate([player1, player2], {
61
+ * type: ChannelType.PRIVATE,
62
+ * persistent: false
63
+ * })
64
+ * channels.broadcast(privateChannel.id, player1, 'Private message')
65
+ * ```
66
+ */
67
+ abstract createPrivate(players: Player[], metadata: ChannelMetadata): Channel;
68
+ abstract get(id: string): Channel | undefined;
69
+ abstract delete(id: string): boolean;
70
+ abstract exists(id: string): boolean;
71
+ /**
72
+ * Subscribes a player to a channel.
73
+ *
74
+ * @remarks
75
+ * If a validator is set, it will be checked before subscribing.
76
+ * Players can only be subscribed once to the same channel.
77
+ *
78
+ * @param channelId - Channel identifier
79
+ * @param player - Player to subscribe
80
+ * @param metadata - Optional subscription metadata
81
+ * @returns true if subscribed successfully, false if validation failed or already subscribed
82
+ * @throws Error if channel doesn't exist
83
+ *
84
+ * @example
85
+ * ```typescript
86
+ * if (channels.subscribe('group:police', player)) {
87
+ * // Player joined the group channel
88
+ * }
89
+ * ```
90
+ */
91
+ abstract subscribe(channelId: string, player: Player, metadata?: Record<string, unknown>): boolean;
92
+ /**
93
+ * Unsubscribes a player from a channel.
94
+ *
95
+ * @param channelId - Channel identifier
96
+ * @param player - Player to unsubscribe
97
+ * @returns true if unsubscribed successfully, false if channel doesn't exist or player wasn't subscribed
98
+ */
99
+ abstract unsubscribe(channelId: string, player: Player): boolean;
100
+ abstract isSubscribed(channelId: string, player: Player): boolean;
101
+ /**
102
+ * Broadcasts a message to all subscribers of a channel.
103
+ *
104
+ * @remarks
105
+ * If a validator is set, it will check if the sender can broadcast.
106
+ * Only sends to currently subscribed players.
107
+ *
108
+ * @param channelId - Channel identifier
109
+ * @param sender - Player sending the message
110
+ * @param message - Message content
111
+ * @param author - Display name for the sender (defaults to sender.name)
112
+ * @param color - Message color (defaults to white)
113
+ * @throws Error if channel doesn't exist
114
+ *
115
+ * @example
116
+ * ```typescript
117
+ * channels.broadcast(
118
+ * 'group:police',
119
+ * player,
120
+ * 'Suspect heading north',
121
+ * undefined,
122
+ * { r: 0, g: 100, b: 255 }
123
+ * )
124
+ * ```
125
+ */
126
+ abstract broadcast(channelId: string, sender: Player, message: string, author?: string, color?: RGB): void;
127
+ /**
128
+ * Broadcasts a system message to all subscribers of a channel.
129
+ *
130
+ * @remarks
131
+ * System messages bypass validator checks and don't require a sender.
132
+ *
133
+ * @param channelId - Channel identifier
134
+ * @param message - Message content
135
+ * @param author - Display name (defaults to 'SYSTEM')
136
+ * @param color - Message color (defaults to light blue)
137
+ * @throws Error if channel doesn't exist
138
+ *
139
+ * @example
140
+ * ```typescript
141
+ * channels.broadcastSystem(
142
+ * 'group:police',
143
+ * 'group meeting in 5 minutes',
144
+ * 'DISPATCH'
145
+ * )
146
+ * ```
147
+ */
148
+ abstract broadcastSystem(channelId: string, message: string, author?: string, color?: RGB): void;
149
+ abstract getSubscribers(channelId: string): Player[];
150
+ /**
151
+ * Gets all channels of a specific type.
152
+ *
153
+ * @param type - Channel type to filter by
154
+ * @returns Array of channels matching the type
155
+ *
156
+ * @example
157
+ * ```typescript
158
+ * const groupChannels = channels.getChannelsByType(ChannelType.group)
159
+ * ```
160
+ */
161
+ abstract getChannelsByType(type: ChannelType): Channel[];
162
+ /**
163
+ * Gets all channels a player is subscribed to.
164
+ *
165
+ * @param player - Player to check
166
+ * @returns Array of channels the player is subscribed to
167
+ *
168
+ * @example
169
+ * ```typescript
170
+ * const playerChannels = channels.getChannelsByPlayer(player)
171
+ * playerChannels.forEach(ch => {
172
+ * console.log(`Player is in channel: ${ch.id}`)
173
+ * })
174
+ * ```
175
+ */
176
+ abstract getChannelsByPlayer(player: Player): Channel[];
177
+ abstract getAllChannels(): Channel[];
178
+ /**
179
+ * Clears all channels and their subscribers.
180
+ *
181
+ * @remarks
182
+ * Persistent channels are cleared but not deleted.
183
+ * Only available in CORE/STANDALONE mode.
184
+ */
185
+ abstract clear(): void;
186
+ /**
187
+ * Deletes all non-persistent (temporary) channels.
188
+ *
189
+ * @remarks
190
+ * Useful for cleanup operations. Persistent channels are not affected.
191
+ * Only available in CORE/STANDALONE mode.
192
+ */
193
+ abstract clearNonPersistent(): void;
194
+ /**
195
+ * Creates a temporary proximity-based channel around a player.
196
+ *
197
+ * @remarks
198
+ * Automatically subscribes all players within the specified radius.
199
+ * Channel is non-persistent and should be deleted after use.
200
+ * Calculates 3D distance between players.
201
+ *
202
+ * @param originPlayer - Player at the center of the proximity area
203
+ * @param radius - Distance radius in game units
204
+ * @param channelId - Optional custom channel ID (auto-generated if not provided)
205
+ * @returns The created channel with nearby players subscribed, or undefined if origin player has no position
206
+ *
207
+ * @example
208
+ * ```typescript
209
+ * // Create proximity channel for local chat
210
+ * const nearby = channels.createProximityChannel(player, 50.0)
211
+ * if (nearby) {
212
+ * channels.broadcast(nearby.id, player, 'Hello nearby players!')
213
+ * channels.delete(nearby.id) // Clean up
214
+ * }
215
+ * ```
216
+ */
217
+ abstract createProximityChannel(originPlayer: Player, radius: number, channelId?: string): Channel | undefined;
218
+ }
@@ -0,0 +1,2 @@
1
+ export class Channels {
2
+ }
@@ -0,0 +1,48 @@
1
+ import { CommandMetadata } from '../../decorators/command';
2
+ import { Player } from '../../entities';
3
+ /**
4
+ * Command information returned by getAllCommands.
5
+ */
6
+ export interface CommandInfo {
7
+ command: string;
8
+ description?: string;
9
+ usage?: string;
10
+ isPublic: boolean;
11
+ }
12
+ /**
13
+ * Abstract port for command registration and execution.
14
+ *
15
+ * @remarks
16
+ * This port provides mode-agnostic access to the command system.
17
+ * Implementations:
18
+ * - CommandService (local): CORE/STANDALONE modes maintain command registry locally
19
+ * - RemoteCommandService (remote): RESOURCE mode delegates to CORE via exports
20
+ */
21
+ export declare abstract class CommandExecutionPort {
22
+ /**
23
+ * Registers a command handler.
24
+ *
25
+ * @param metadata - Command metadata from decorator
26
+ * @param handler - Bound method to invoke when command is executed
27
+ */
28
+ abstract register(metadata: CommandMetadata, handler: (...args: any[]) => any): void;
29
+ /**
30
+ * Executes a registered command.
31
+ *
32
+ * @param player - Player invoking the command
33
+ * @param commandName - Command name (without leading slash)
34
+ * @param args - Raw argument strings
35
+ */
36
+ abstract execute(player: Player, commandName: string, args: string[]): Promise<void>;
37
+ /**
38
+ * Returns metadata for a command if registered in this runtime.
39
+ *
40
+ * @remarks
41
+ * Used to enrich error observation (usage/description/etc.).
42
+ */
43
+ abstract getCommandMeta(commandName: string): CommandMetadata | undefined;
44
+ /**
45
+ * Returns all registered commands.
46
+ */
47
+ abstract getAllCommands(): CommandInfo[];
48
+ }
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Abstract port for command registration and execution.
3
+ *
4
+ * @remarks
5
+ * This port provides mode-agnostic access to the command system.
6
+ * Implementations:
7
+ * - CommandService (local): CORE/STANDALONE modes maintain command registry locally
8
+ * - RemoteCommandService (remote): RESOURCE mode delegates to CORE via exports
9
+ */
10
+ export class CommandExecutionPort {
11
+ }
@@ -0,0 +1,37 @@
1
+ import { Player } from '../../entities';
2
+ import { PlayerSession } from '../../services';
3
+ /**
4
+ * Core port responsible for managing the lifecycle of player sessions.
5
+ *
6
+ * @remarks
7
+ * This port defines the authoritative boundary for creating, linking, and
8
+ * destroying player sessions within the framework.
9
+ *
10
+ * Implementations of this port own the session state and are expected to be
11
+ * invoked in response to connection, authentication, and disconnection events.
12
+ */
13
+ export declare abstract class PlayerSessionLifecyclePort {
14
+ /**
15
+ * Creates and binds a new player session to a connected client.
16
+ *
17
+ * @remarks
18
+ * This method is typically called when a player joins the server or completes
19
+ * the initial handshake phase. The returned {@link Player} represents the
20
+ * runtime session associated with the client.
21
+ *
22
+ * @param clientID - The FiveM server client ID (`source`).
23
+ * @param identifiers - Optional platform identifiers (license, steam, etc.).
24
+ * @returns The newly created {@link Player} instance.
25
+ */
26
+ abstract bind(clientID: number, identifiers?: PlayerSession['identifiers']): Player;
27
+ /**
28
+ * Terminates and removes the player session associated with a client.
29
+ *
30
+ * @remarks
31
+ * This method should be called when the client disconnects to ensure
32
+ * session state is properly cleaned up and memory is released.
33
+ *
34
+ * @param clientID - The FiveM server client ID (`source`).
35
+ */
36
+ abstract unbind(clientID: number): void;
37
+ }
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Core port responsible for managing the lifecycle of player sessions.
3
+ *
4
+ * @remarks
5
+ * This port defines the authoritative boundary for creating, linking, and
6
+ * destroying player sessions within the framework.
7
+ *
8
+ * Implementations of this port own the session state and are expected to be
9
+ * invoked in response to connection, authentication, and disconnection events.
10
+ */
11
+ export class PlayerSessionLifecyclePort {
12
+ }
@@ -0,0 +1,108 @@
1
+ import { Player } from '../entities';
2
+ import { LinkedID } from '../services';
3
+ /**
4
+ * Core port that provides access to active player sessions.
5
+ *
6
+ * @remarks
7
+ * This port defines a framework-owned boundary for querying and managing player-related data
8
+ * regardless of the current runtime mode (CORE, RESOURCE, etc.).
9
+ *
10
+ * Implementations of this port are responsible for resolving player information
11
+ * from the authoritative source (local session store, remote core exports, etc.).
12
+ *
13
+ * Consumers should treat returned {@link Player} instances as runtime representations
14
+ * of connected clients, not as persistent domain models.
15
+ *
16
+ * **Mode Differences:**
17
+ * - **CORE/STANDALONE**: Data is local and authoritative
18
+ * - **RESOURCE**: Data is fetched from CORE via exports
19
+ */
20
+ export declare abstract class Players {
21
+ /**
22
+ * Returns the {@link Player} associated with a given FiveM client ID.
23
+ *
24
+ * @param clientID - The FiveM server client ID (`source`).
25
+ * @returns The corresponding {@link Player} instance, or `undefined` if the player is not connected.
26
+ */
27
+ abstract getByClient(clientID: number): Player | undefined;
28
+ /**
29
+ * Returns a group of {@link Player} associated with a given fivem clients ids
30
+ *
31
+ * @param clientIds The fivem server client ID (`source`)
32
+ */
33
+ abstract getMany(clientIds: number[]): Player[];
34
+ /**
35
+ * Returns all currently connected players.
36
+ *
37
+ * @returns An array of {@link Player} instances representing all active clients.
38
+ */
39
+ abstract getAll(): Player[];
40
+ /**
41
+ * Returns the persistent account identifier associated with a client.
42
+ *
43
+ * @remarks
44
+ * The returned identifier is typically assigned after authentication and may be
45
+ * `undefined` if the player has not completed the login or character selection flow.
46
+ *
47
+ * @param clientID - The FiveM server client ID (`source`).
48
+ * @returns The linked account ID, or `undefined` if none is associated.
49
+ */
50
+ abstract getAccountLinked(clientID: number): LinkedID | undefined;
51
+ /**
52
+ * Retrieves a metadata value associated with a player session.
53
+ *
54
+ * @remarks
55
+ * Metadata values are transient and scoped to the current session.
56
+ * Implementations may resolve this data locally or delegate to the core runtime.
57
+ *
58
+ * @typeParam T - The expected type of the stored value.
59
+ * @param clientID - The FiveM server client ID (`source`).
60
+ * @param key - The metadata key to retrieve.
61
+ * @returns The stored value, or `undefined` if the key does not exist.
62
+ */
63
+ abstract getMeta<T = unknown>(clientID: number, key: string): Promise<T | undefined>;
64
+ /**
65
+ * Stores a metadata value in the player session.
66
+ *
67
+ * @remarks
68
+ * Metadata is intended for transient runtime state such as flags, gameplay context,
69
+ * or temporary attributes. It is not persisted across reconnects.
70
+ *
71
+ * @param clientID - The FiveM server client ID (`source`).
72
+ * @param key - The metadata key to store.
73
+ * @param value - The value to associate with the given key.
74
+ */
75
+ abstract setMeta(clientID: number, key: string, value: unknown): void;
76
+ /**
77
+ * Returns the {@link Player} associated with a persistent account ID.
78
+ *
79
+ * @remarks
80
+ * Searches all connected players for one with the matching accountID.
81
+ * Returns `undefined` if no player with that account is currently online.
82
+ *
83
+ * @param accountId - The persistent account identifier.
84
+ * @returns The corresponding {@link Player} instance, or `undefined` if not online.
85
+ */
86
+ abstract getByAccountId(accountId: string): Player | undefined;
87
+ /**
88
+ * Returns the current number of connected players.
89
+ *
90
+ * @remarks
91
+ * More efficient than `getAll().length` for implementations that
92
+ * can provide a count without fetching all player data.
93
+ *
94
+ * @returns The number of currently connected players.
95
+ */
96
+ abstract getPlayerCount(): number;
97
+ /**
98
+ * Checks if a player with the given account ID is currently online.
99
+ *
100
+ * @remarks
101
+ * More efficient than `getByAccountId() !== undefined` for implementations
102
+ * that can check presence without fetching full player data.
103
+ *
104
+ * @param accountId - The persistent account identifier.
105
+ * @returns `true` if the player is online, `false` otherwise.
106
+ */
107
+ abstract isOnline(accountId: string): boolean;
108
+ }
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Core port that provides access to active player sessions.
3
+ *
4
+ * @remarks
5
+ * This port defines a framework-owned boundary for querying and managing player-related data
6
+ * regardless of the current runtime mode (CORE, RESOURCE, etc.).
7
+ *
8
+ * Implementations of this port are responsible for resolving player information
9
+ * from the authoritative source (local session store, remote core exports, etc.).
10
+ *
11
+ * Consumers should treat returned {@link Player} instances as runtime representations
12
+ * of connected clients, not as persistent domain models.
13
+ *
14
+ * **Mode Differences:**
15
+ * - **CORE/STANDALONE**: Data is local and authoritative
16
+ * - **RESOURCE**: Data is fetched from CORE via exports
17
+ */
18
+ export class Players {
19
+ }