@open-core/framework 0.2.9 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/adapters/contracts/IPlatformCapabilities.d.ts +79 -0
- package/dist/adapters/contracts/IPlatformCapabilities.js +31 -0
- package/dist/adapters/contracts/IPlayerInfo.d.ts +1 -1
- package/dist/adapters/contracts/{IPedAppearanceClient.d.ts → client/IPedAppearanceClient.d.ts} +1 -1
- package/dist/adapters/contracts/server/IEntityServer.d.ts +188 -0
- package/dist/adapters/contracts/server/IEntityServer.js +39 -0
- package/dist/adapters/contracts/{IPlayerServer.d.ts → server/IPlayerServer.d.ts} +52 -9
- package/dist/adapters/contracts/server/IPlayerServer.js +39 -0
- package/dist/adapters/contracts/types/identifier.d.ts +67 -0
- package/dist/adapters/contracts/types/identifier.js +64 -0
- package/dist/adapters/contracts/types/index.d.ts +1 -0
- package/dist/{kernel/shared/appearance → adapters/contracts/types}/index.js +1 -1
- package/dist/adapters/fivem/fivem-capabilities.d.ts +18 -0
- package/dist/adapters/fivem/fivem-capabilities.js +67 -0
- package/dist/adapters/fivem/fivem-engine-events.js +17 -4
- package/dist/adapters/fivem/fivem-entity-server.d.ts +6 -2
- package/dist/adapters/fivem/fivem-entity-server.js +14 -1
- package/dist/adapters/fivem/fivem-ped-appearance-client.d.ts +1 -1
- package/dist/adapters/fivem/fivem-ped-appearance-client.js +1 -1
- package/dist/adapters/fivem/fivem-ped-appearance-server.d.ts +1 -1
- package/dist/adapters/fivem/fivem-ped-appearance-server.js +1 -1
- package/dist/adapters/fivem/fivem-platform.d.ts +5 -0
- package/dist/adapters/fivem/fivem-platform.js +100 -0
- package/dist/adapters/fivem/fivem-player-server.d.ts +7 -1
- package/dist/adapters/fivem/fivem-player-server.js +19 -1
- package/dist/adapters/fivem/fivem-playerinfo.d.ts +1 -1
- package/dist/adapters/fivem/fivem-vehicle-server.d.ts +1 -1
- package/dist/adapters/fivem/fivem-vehicle-server.js +1 -1
- package/dist/adapters/fivem/index.d.ts +13 -0
- package/dist/adapters/fivem/index.js +31 -0
- package/dist/adapters/index.d.ts +8 -7
- package/dist/adapters/index.js +13 -12
- package/dist/adapters/node/index.d.ts +5 -0
- package/dist/adapters/node/index.js +13 -1
- package/dist/adapters/node/node-capabilities.d.ts +19 -0
- package/dist/adapters/node/node-capabilities.js +54 -0
- package/dist/adapters/node/node-entity-server.d.ts +17 -6
- package/dist/adapters/node/node-entity-server.js +41 -15
- package/dist/adapters/node/node-net-transport.js +2 -2
- package/dist/adapters/node/node-ped-appearance-client.d.ts +1 -1
- package/dist/adapters/node/node-ped-appearance-client.js +1 -1
- package/dist/adapters/node/node-ped-appearance-server.d.ts +1 -1
- package/dist/adapters/node/node-ped-appearance-server.js +1 -1
- package/dist/adapters/node/node-platform.d.ts +5 -0
- package/dist/adapters/node/node-platform.js +103 -0
- package/dist/adapters/node/node-player-server.d.ts +19 -3
- package/dist/adapters/node/node-player-server.js +43 -9
- package/dist/adapters/node/node-playerinfo.d.ts +2 -2
- package/dist/adapters/node/node-playerinfo.js +14 -3
- package/dist/adapters/node/node-vehicle-server.d.ts +1 -1
- package/dist/adapters/node/node-vehicle-server.js +1 -1
- package/dist/adapters/platform/index.d.ts +1 -0
- package/dist/{runtime/server/database.js → adapters/platform/index.js} +1 -7
- package/dist/adapters/platform/platform-registry.d.ts +101 -0
- package/dist/adapters/platform/platform-registry.js +122 -0
- package/dist/adapters/register-capabilities.d.ts +52 -2
- package/dist/adapters/register-capabilities.js +69 -130
- package/dist/adapters/register-client-capabilities.js +1 -1
- package/dist/index.d.ts +2 -5
- package/dist/index.js +5 -31
- package/dist/kernel/di/container.d.ts +4 -2
- package/dist/kernel/di/container.js +5 -3
- package/dist/kernel/di/metadata.scanner.d.ts +2 -1
- package/dist/kernel/di/metadata.scanner.js +3 -2
- package/dist/kernel/{utils/error → error}/app.error.d.ts +2 -2
- package/dist/kernel/error/common.error-codes.d.ts +1 -0
- package/dist/kernel/error/framework.error-codes.d.ts +12 -0
- package/dist/kernel/error/index.d.ts +4 -0
- package/dist/kernel/error/index.js +18 -0
- package/dist/kernel/{utils/error → error}/security.error.d.ts +1 -1
- package/dist/kernel/error/security.types.js +2 -0
- package/dist/kernel/index.d.ts +4 -5
- package/dist/kernel/index.js +6 -11
- package/dist/kernel/{shared/logger → logger}/core-logger.d.ts +0 -19
- package/dist/kernel/{shared/logger → logger}/core-logger.js +10 -24
- package/dist/kernel/{shared/logger → logger}/logger.env.d.ts +12 -5
- package/dist/kernel/{shared/logger → logger}/logger.env.js +29 -13
- package/dist/kernel/{shared/logger → logger}/logger.service.d.ts +14 -0
- package/dist/kernel/{shared/logger → logger}/logger.service.js +20 -2
- package/dist/kernel/logger/transports/transport.interface.js +2 -0
- package/dist/kernel/shared/index.d.ts +1 -2
- package/dist/kernel/shared/index.js +1 -2
- package/dist/kernel/utils/index.d.ts +0 -2
- package/dist/kernel/utils/index.js +0 -2
- package/dist/kernel/utils/result.d.ts +1 -1
- package/dist/runtime/client/api.d.ts +7 -0
- package/dist/runtime/client/api.js +23 -0
- package/dist/runtime/client/client-bootstrap.js +1 -1
- package/dist/runtime/client/controllers/spawner.controller.d.ts +1 -1
- package/dist/runtime/client/decorators/index.d.ts +2 -2
- package/dist/runtime/client/decorators/index.js +2 -2
- package/dist/runtime/client/decorators/key.d.ts +2 -2
- package/dist/runtime/client/decorators/key.js +3 -3
- package/dist/runtime/client/decorators/localEvent.d.ts +1 -1
- package/dist/runtime/client/decorators/localEvent.js +1 -1
- package/dist/runtime/client/decorators/{tick.d.ts → onTick.d.ts} +1 -1
- package/dist/runtime/client/decorators/{tick.js → onTick.js} +2 -2
- package/dist/runtime/client/decorators/{nui.d.ts → onView.d.ts} +4 -4
- package/dist/runtime/client/decorators/{nui.js → onView.js} +5 -5
- package/dist/runtime/client/index.d.ts +1 -7
- package/dist/runtime/client/index.js +26 -12
- package/dist/runtime/client/player/player.d.ts +1 -1
- package/dist/runtime/client/player/player.loader.js +3 -3
- package/dist/runtime/client/services/appearance.service.d.ts +1 -1
- package/dist/runtime/client/services/appearance.service.js +1 -1
- package/dist/runtime/client/services/blip.service.d.ts +1 -1
- package/dist/runtime/client/services/marker.service.d.ts +1 -1
- package/dist/runtime/client/services/ped.service.d.ts +1 -1
- package/dist/runtime/client/services/spawn.service.d.ts +2 -2
- package/dist/runtime/client/services/spawn.service.js +12 -12
- package/dist/runtime/client/services/textui.service.d.ts +1 -1
- package/dist/runtime/client/services/vehicle-client.service.d.ts +1 -1
- package/dist/runtime/client/services/vehicle.service.d.ts +1 -1
- package/dist/runtime/client/system/processors/export.processor.js +1 -1
- package/dist/runtime/client/system/processors/gameEvent.processor.js +1 -1
- package/dist/runtime/client/system/processors/interval.processor.js +1 -1
- package/dist/runtime/client/system/processors/localEvent.processor.js +1 -1
- package/dist/runtime/client/system/processors/netEvent.processor.js +1 -1
- package/dist/runtime/client/system/processors/nui.processor.js +1 -1
- package/dist/runtime/client/system/processors/resourceLifecycle.processor.js +1 -1
- package/dist/runtime/client/system/processors/tick.processor.js +1 -1
- package/dist/runtime/client/ui-bridge.js +1 -1
- package/dist/runtime/core/entity.d.ts +168 -0
- package/dist/runtime/core/entity.js +226 -0
- package/dist/runtime/core/index.d.ts +3 -0
- package/dist/runtime/core/index.js +19 -0
- package/dist/runtime/core/spatial.d.ts +5 -0
- package/dist/runtime/core/spatial.js +2 -0
- package/dist/runtime/core/world.d.ts +13 -0
- package/dist/runtime/core/world.js +64 -0
- package/dist/runtime/server/api.d.ts +12 -0
- package/dist/runtime/server/api.js +34 -0
- package/dist/runtime/server/bootstrap.js +58 -103
- package/dist/runtime/server/bus/internal-event.bus.js +1 -1
- package/dist/runtime/server/contracts/index.d.ts +1 -2
- package/dist/runtime/server/contracts/index.js +2 -3
- package/dist/runtime/server/contracts/player-persistence.contract.d.ts +16 -18
- package/dist/runtime/server/contracts/player-persistence.contract.js +16 -18
- package/dist/runtime/server/contracts/security/command-error-observer.contract.d.ts +73 -0
- package/dist/runtime/server/contracts/security/command-error-observer.contract.js +9 -0
- package/dist/runtime/server/contracts/security/permission.types.d.ts +2 -2
- package/dist/runtime/server/contracts/security/principal-provider.contract.d.ts +3 -3
- package/dist/runtime/server/contracts/security/principal-provider.contract.js +2 -2
- package/dist/runtime/server/contracts/security/security-handler.contract.d.ts +2 -2
- package/dist/runtime/server/controllers/chat.controller.d.ts +1 -1
- package/dist/runtime/server/controllers/chat.controller.js +5 -0
- package/dist/runtime/server/controllers/command-export.controller.d.ts +12 -3
- package/dist/runtime/server/controllers/command-export.controller.js +81 -25
- package/dist/runtime/server/controllers/player-export.controller.d.ts +2 -2
- package/dist/runtime/server/controllers/player-export.controller.js +5 -0
- package/dist/runtime/server/controllers/principal-export.controller.js +8 -7
- package/dist/runtime/server/controllers/ready.controller.d.ts +5 -0
- package/dist/runtime/server/controllers/ready.controller.js +37 -0
- package/dist/runtime/server/controllers/remote-command-execution.controller.d.ts +10 -1
- package/dist/runtime/server/controllers/remote-command-execution.controller.js +65 -13
- package/dist/runtime/server/controllers/session.controller.d.ts +2 -2
- package/dist/runtime/server/controllers/session.controller.js +25 -17
- package/dist/runtime/server/controllers/vehicle.controller.d.ts +3 -38
- package/dist/runtime/server/controllers/vehicle.controller.js +6 -152
- package/dist/runtime/server/decorators/guard.js +2 -2
- package/dist/runtime/server/decorators/index.d.ts +1 -1
- package/dist/runtime/server/decorators/index.js +1 -1
- package/dist/runtime/server/decorators/{onFiveMEvent.d.ts → onRuntimeEvent.d.ts} +5 -4
- package/dist/runtime/server/decorators/{onFiveMEvent.js → onRuntimeEvent.js} +7 -6
- package/dist/runtime/server/decorators/requiresState.js +3 -3
- package/dist/runtime/server/decorators/throttle.d.ts +1 -1
- package/dist/runtime/server/decorators/throttle.js +1 -1
- package/dist/runtime/server/decorators/utils.d.ts +1 -1
- package/dist/runtime/server/decorators/utils.js +1 -1
- package/dist/runtime/server/devmode/dev-mode.service.d.ts +7 -8
- package/dist/runtime/server/devmode/dev-mode.service.js +18 -46
- package/dist/runtime/server/devmode/index.d.ts +1 -3
- package/dist/runtime/server/devmode/index.js +1 -18
- package/dist/runtime/server/devmode/player-simulator.service.js +3 -3
- package/dist/runtime/server/devmode/state-inspector.service.js +2 -2
- package/dist/runtime/server/devmode/types.d.ts +67 -31
- package/dist/runtime/server/devmode/types.js +1 -4
- package/dist/runtime/server/entities/player.d.ts +80 -66
- package/dist/runtime/server/entities/player.js +137 -98
- package/dist/runtime/server/entities/vehicle.d.ts +3 -3
- package/dist/runtime/server/error-handler.js +5 -5
- package/dist/runtime/server/helpers/normalize-app-error.d.ts +9 -0
- package/dist/runtime/server/helpers/normalize-app-error.js +20 -0
- package/dist/runtime/server/helpers/resolve-method.js +3 -3
- package/dist/runtime/server/index.d.ts +1 -13
- package/dist/runtime/server/index.js +25 -23
- package/dist/runtime/server/runtime.d.ts +32 -281
- package/dist/runtime/server/runtime.js +46 -60
- package/dist/runtime/server/services/appearance.service.d.ts +5 -5
- package/dist/runtime/server/services/appearance.service.js +5 -5
- package/dist/runtime/server/services/chat.service.d.ts +5 -3
- package/dist/runtime/server/services/chat.service.js +17 -12
- package/dist/runtime/server/services/core/command.service.d.ts +9 -1
- package/dist/runtime/server/services/core/command.service.js +16 -7
- package/dist/runtime/server/services/core/player.service.d.ts +12 -16
- package/dist/runtime/server/services/core/player.service.js +42 -47
- package/dist/runtime/server/services/core/principal.service.js +5 -5
- package/dist/runtime/server/services/core/session-recovery.service.d.ts +1 -1
- package/dist/runtime/server/services/core/session-recovery.service.js +2 -2
- package/dist/runtime/server/services/default/default-command-error-observer.d.ts +14 -0
- package/dist/runtime/server/services/default/default-command-error-observer.js +43 -0
- package/dist/runtime/server/services/default/default-principal.provider.d.ts +13 -0
- package/dist/runtime/server/services/default/default-principal.provider.js +38 -0
- package/dist/runtime/server/services/default/default-security.handler.d.ts +1 -1
- package/dist/runtime/server/services/default/default-security.handler.js +1 -1
- package/dist/runtime/server/services/index.d.ts +0 -3
- package/dist/runtime/server/services/index.js +1 -6
- package/dist/runtime/server/services/persistence.service.js +3 -3
- package/dist/runtime/server/services/ports/command-execution.port.d.ts +7 -0
- package/dist/runtime/server/services/ports/principal.port.d.ts +1 -1
- package/dist/runtime/server/services/remote/remote-command.service.d.ts +1 -0
- package/dist/runtime/server/services/remote/remote-command.service.js +7 -3
- package/dist/runtime/server/services/remote/remote-player.service.d.ts +2 -2
- package/dist/runtime/server/services/remote/remote-player.service.js +3 -3
- package/dist/runtime/server/services/remote/server-bridge.js +2 -2
- package/dist/runtime/server/services/services.register.d.ts +2 -5
- package/dist/runtime/server/services/services.register.js +29 -41
- package/dist/runtime/server/services/vehicle-modification.service.js +1 -1
- package/dist/runtime/server/services/vehicle.service.d.ts +3 -3
- package/dist/runtime/server/services/vehicle.service.js +5 -5
- package/dist/runtime/server/setup.d.ts +2 -3
- package/dist/runtime/server/setup.js +10 -11
- package/dist/runtime/server/system/metadata-server.keys.d.ts +1 -1
- package/dist/runtime/server/system/metadata-server.keys.js +1 -1
- package/dist/runtime/server/system/processors/command.processor.js +4 -0
- package/dist/runtime/server/system/processors/export.processor.js +1 -1
- package/dist/runtime/server/system/processors/internalEvent.processor.js +1 -1
- package/dist/runtime/server/system/processors/netEvent.processor.js +8 -9
- package/dist/runtime/server/system/processors/{fivemEvent.processor.d.ts → runtimeEvent.processor.d.ts} +1 -1
- package/dist/runtime/server/system/processors/{fivemEvent.processor.js → runtimeEvent.processor.js} +8 -8
- package/dist/runtime/server/system/processors/tick.processor.js +1 -1
- package/dist/runtime/server/system/processors.register.js +16 -11
- package/dist/runtime/server/system/schema-generator.js +2 -2
- package/dist/runtime/server/types/core-exports.d.ts +6 -6
- package/dist/runtime/server/types/index.d.ts +1 -1
- package/dist/runtime/server/types/index.js +1 -1
- package/dist/runtime/server/types/internal-events.d.ts +1 -1
- package/dist/runtime/server/types/vehicle.types.d.ts +1 -1
- package/package.json +7 -15
- package/dist/adapters/contracts/IEntityServer.d.ts +0 -88
- package/dist/adapters/contracts/IEntityServer.js +0 -13
- package/dist/adapters/contracts/IPlayerServer.js +0 -13
- package/dist/adapters/database/oxmysql.adapter.d.ts +0 -89
- package/dist/adapters/database/oxmysql.adapter.js +0 -149
- package/dist/adapters/database/resource.adapter.d.ts +0 -12
- package/dist/adapters/database/resource.adapter.js +0 -68
- package/dist/kernel/shared/appearance/index.d.ts +0 -1
- package/dist/runtime/index.d.ts +0 -2
- package/dist/runtime/index.js +0 -39
- package/dist/runtime/server/bootstrap.validation.d.ts +0 -12
- package/dist/runtime/server/bootstrap.validation.js +0 -104
- package/dist/runtime/server/contracts/auth-provider.contract.d.ts +0 -58
- package/dist/runtime/server/contracts/auth-provider.contract.js +0 -23
- package/dist/runtime/server/contracts/repository/index.d.ts +0 -57
- package/dist/runtime/server/contracts/repository/index.js +0 -61
- package/dist/runtime/server/contracts/repository/repository.contract.d.ts +0 -224
- package/dist/runtime/server/contracts/repository/repository.contract.js +0 -341
- package/dist/runtime/server/contracts/repository/repository.types.d.ts +0 -51
- package/dist/runtime/server/contracts/repository/repository.types.js +0 -7
- package/dist/runtime/server/database/adapter.registry.d.ts +0 -4
- package/dist/runtime/server/database/adapter.registry.js +0 -14
- package/dist/runtime/server/database/database.contract.d.ts +0 -128
- package/dist/runtime/server/database/database.contract.js +0 -29
- package/dist/runtime/server/database/database.service.d.ts +0 -188
- package/dist/runtime/server/database/database.service.js +0 -287
- package/dist/runtime/server/database/index.d.ts +0 -5
- package/dist/runtime/server/database/index.js +0 -25
- package/dist/runtime/server/database/types.d.ts +0 -67
- package/dist/runtime/server/database/types.js +0 -7
- package/dist/runtime/server/database.d.ts +0 -7
- package/dist/runtime/server/devmode/hot-reload.server.d.ts +0 -74
- package/dist/runtime/server/devmode/hot-reload.server.js +0 -261
- package/dist/runtime/server/services/config.service.d.ts +0 -75
- package/dist/runtime/server/services/config.service.js +0 -116
- package/dist/runtime/server/services/http/http.service.d.ts +0 -50
- package/dist/runtime/server/services/http/http.service.js +0 -126
- /package/dist/adapters/contracts/{IPedAppearanceClient.js → client/IPedAppearanceClient.js} +0 -0
- /package/dist/adapters/contracts/{IPedAppearanceServer.d.ts → server/IPedAppearanceServer.d.ts} +0 -0
- /package/dist/adapters/contracts/{IPedAppearanceServer.js → server/IPedAppearanceServer.js} +0 -0
- /package/dist/adapters/contracts/{IVehicleServer.d.ts → server/IVehicleServer.d.ts} +0 -0
- /package/dist/adapters/contracts/{IVehicleServer.js → server/IVehicleServer.js} +0 -0
- /package/dist/kernel/{utils/error → error}/app.error.js +0 -0
- /package/dist/kernel/{shared/logger/transports/transport.interface.js → error/common.error-codes.js} +0 -0
- /package/dist/{runtime/server/types/security.types.js → kernel/error/framework.error-codes.js} +0 -0
- /package/dist/kernel/{utils/error → error}/security.error.js +0 -0
- /package/dist/{runtime/server/types → kernel/error}/security.types.d.ts +0 -0
- /package/dist/kernel/{shared/logger → logger}/index.d.ts +0 -0
- /package/dist/kernel/{shared/logger → logger}/index.js +0 -0
- /package/dist/kernel/{shared/logger → logger}/logger.config.d.ts +0 -0
- /package/dist/kernel/{shared/logger → logger}/logger.config.js +0 -0
- /package/dist/kernel/{shared/logger → logger}/logger.types.d.ts +0 -0
- /package/dist/kernel/{shared/logger → logger}/logger.types.js +0 -0
- /package/dist/kernel/{shared/logger → logger}/transports/buffered.transport.d.ts +0 -0
- /package/dist/kernel/{shared/logger → logger}/transports/buffered.transport.js +0 -0
- /package/dist/kernel/{shared/logger → logger}/transports/console.transport.d.ts +0 -0
- /package/dist/kernel/{shared/logger → logger}/transports/console.transport.js +0 -0
- /package/dist/kernel/{shared/logger → logger}/transports/dev-transport.factory.d.ts +0 -0
- /package/dist/kernel/{shared/logger → logger}/transports/dev-transport.factory.js +0 -0
- /package/dist/kernel/{shared/logger → logger}/transports/http.transport.d.ts +0 -0
- /package/dist/kernel/{shared/logger → logger}/transports/http.transport.js +0 -0
- /package/dist/kernel/{shared/logger → logger}/transports/index.d.ts +0 -0
- /package/dist/kernel/{shared/logger → logger}/transports/index.js +0 -0
- /package/dist/kernel/{shared/logger → logger}/transports/simple-console.transport.d.ts +0 -0
- /package/dist/kernel/{shared/logger → logger}/transports/simple-console.transport.js +0 -0
- /package/dist/kernel/{shared/logger → logger}/transports/transport.interface.d.ts +0 -0
- /package/dist/kernel/{shared/logger → logger}/transports/websocket.transport.d.ts +0 -0
- /package/dist/kernel/{shared/logger → logger}/transports/websocket.transport.js +0 -0
- /package/dist/kernel/shared/{appearance/appearance.interface.d.ts → player-appearance.types.d.ts} +0 -0
- /package/dist/kernel/shared/{appearance/appearance.interface.js → player-appearance.types.js} +0 -0
|
@@ -10,7 +10,7 @@ exports.PlayerSimulatorService = void 0;
|
|
|
10
10
|
const tsyringe_1 = require("tsyringe");
|
|
11
11
|
const INetTransport_1 = require("../../../adapters/contracts/INetTransport");
|
|
12
12
|
const container_1 = require("../../../kernel/di/container");
|
|
13
|
-
const logger_1 = require("../../../kernel/
|
|
13
|
+
const logger_1 = require("../../../kernel/logger");
|
|
14
14
|
const player_session_lifecycle_port_1 = require("../services/ports/player-session-lifecycle.port");
|
|
15
15
|
/**
|
|
16
16
|
* Service for simulating player connections during development.
|
|
@@ -24,10 +24,10 @@ let PlayerSimulatorService = class PlayerSimulatorService {
|
|
|
24
24
|
this.clientIdCounter = 90000; // Start high to avoid conflicts with real players
|
|
25
25
|
}
|
|
26
26
|
get transport() {
|
|
27
|
-
return container_1.
|
|
27
|
+
return container_1.GLOBAL_CONTAINER.resolve(INetTransport_1.INetTransport);
|
|
28
28
|
}
|
|
29
29
|
get sessionLifecycle() {
|
|
30
|
-
return container_1.
|
|
30
|
+
return container_1.GLOBAL_CONTAINER.resolve(player_session_lifecycle_port_1.PlayerSessionLifecyclePort);
|
|
31
31
|
}
|
|
32
32
|
/**
|
|
33
33
|
* Connects a simulated player.
|
|
@@ -27,7 +27,7 @@ let StateInspectorService = class StateInspectorService extends IDevModeInspecto
|
|
|
27
27
|
this.fiveMEventHandlers = new Map();
|
|
28
28
|
}
|
|
29
29
|
get players() {
|
|
30
|
-
return container_1.
|
|
30
|
+
return container_1.GLOBAL_CONTAINER.resolve(player_directory_port_1.PlayerDirectoryPort);
|
|
31
31
|
}
|
|
32
32
|
captureSnapshot() {
|
|
33
33
|
const ctx = (0, runtime_1.getRuntimeContext)();
|
|
@@ -64,7 +64,7 @@ let StateInspectorService = class StateInspectorService extends IDevModeInspecto
|
|
|
64
64
|
// Note: This is a simplified implementation
|
|
65
65
|
// The actual implementation depends on tsyringe internals
|
|
66
66
|
try {
|
|
67
|
-
const container = container_1.
|
|
67
|
+
const container = container_1.GLOBAL_CONTAINER;
|
|
68
68
|
if (container._registry) {
|
|
69
69
|
for (const [token, registration] of container._registry) {
|
|
70
70
|
const tokenName = typeof token === 'function' ? token.name : String(token);
|
|
@@ -29,96 +29,131 @@ export interface DevEvent {
|
|
|
29
29
|
}
|
|
30
30
|
/**
|
|
31
31
|
* Message sent through the DevMode bridge.
|
|
32
|
+
*
|
|
33
|
+
* @remarks
|
|
34
|
+
* The bridge acts as a telemetry and control tunnel between the OpenCore runtime
|
|
35
|
+
* and the external CLI. It allows for real-time log streaming and state inspection.
|
|
32
36
|
*/
|
|
33
37
|
export interface BridgeMessage {
|
|
34
|
-
|
|
38
|
+
/**
|
|
39
|
+
* Message type:
|
|
40
|
+
* - 'log': Real-time server log streaming
|
|
41
|
+
* - 'event': Notification of a captured event (net, command, etc)
|
|
42
|
+
* - 'state': Runtime state snapshot response
|
|
43
|
+
* - 'command': Control command from CLI (e.g. trigger simulation)
|
|
44
|
+
* - 'ping'/'pong': Connection heartbeat
|
|
45
|
+
*/
|
|
46
|
+
type: 'log' | 'event' | 'state' | 'command' | 'ping' | 'pong';
|
|
47
|
+
/** Data associated with the message */
|
|
35
48
|
payload: unknown;
|
|
36
49
|
}
|
|
37
50
|
/**
|
|
38
51
|
* Snapshot of the runtime state.
|
|
52
|
+
*
|
|
53
|
+
* @remarks
|
|
54
|
+
* Used by the CLI to visualize the current state of the framework without
|
|
55
|
+
* requiring game access.
|
|
39
56
|
*/
|
|
40
57
|
export interface RuntimeSnapshot {
|
|
41
58
|
/** Capture timestamp */
|
|
42
59
|
timestamp: number;
|
|
43
|
-
/** Current framework mode */
|
|
60
|
+
/** Current framework mode (CORE, RESOURCE, STANDALONE) */
|
|
44
61
|
mode: FrameworkMode;
|
|
45
|
-
/** Enabled features */
|
|
62
|
+
/** Enabled features and their status */
|
|
46
63
|
features: Record<string, boolean>;
|
|
47
|
-
/** Player information */
|
|
64
|
+
/** Player information (simulated and real) */
|
|
48
65
|
players: {
|
|
49
66
|
count: number;
|
|
50
67
|
ids: number[];
|
|
51
68
|
};
|
|
52
|
-
/** Registered handlers */
|
|
69
|
+
/** Registered handlers for discovery */
|
|
53
70
|
handlers: {
|
|
54
71
|
commands: string[];
|
|
55
72
|
netEvents: string[];
|
|
56
73
|
exports: string[];
|
|
57
74
|
fiveMEvents: string[];
|
|
58
75
|
};
|
|
59
|
-
/** DI container
|
|
76
|
+
/** DI container information */
|
|
60
77
|
diContainer: {
|
|
61
78
|
registrations: number;
|
|
62
79
|
singletons: string[];
|
|
63
80
|
};
|
|
64
81
|
}
|
|
65
|
-
/**
|
|
66
|
-
* Hot reload configuration.
|
|
67
|
-
*/
|
|
68
|
-
export interface HotReloadOptions {
|
|
69
|
-
/** Enable hot reload server */
|
|
70
|
-
enabled: boolean;
|
|
71
|
-
/** HTTP port for reload endpoint */
|
|
72
|
-
port: number;
|
|
73
|
-
/** Resources allowed to trigger reload (empty = all) */
|
|
74
|
-
allowedResources?: string[];
|
|
75
|
-
}
|
|
76
82
|
/**
|
|
77
83
|
* Bridge configuration for CLI connection.
|
|
84
|
+
*
|
|
85
|
+
* @remarks
|
|
86
|
+
* The bridge enables advanced development features like log streaming to CLI
|
|
87
|
+
* and state inspection. It does NOT handle resource restarts (txAdmin handles that).
|
|
78
88
|
*/
|
|
79
89
|
export interface BridgeOptions {
|
|
80
|
-
/**
|
|
90
|
+
/**
|
|
91
|
+
* WebSocket URL of the OpenCore CLI bridge.
|
|
92
|
+
* @defaultValue 'ws://localhost:3848'
|
|
93
|
+
*/
|
|
81
94
|
url: string;
|
|
82
|
-
/**
|
|
95
|
+
/**
|
|
96
|
+
* Whether to connect to the bridge automatically on startup.
|
|
97
|
+
* @defaultValue false
|
|
98
|
+
*/
|
|
83
99
|
autoConnect: boolean;
|
|
84
|
-
/**
|
|
100
|
+
/** Whether to attempt reconnection if connection is lost */
|
|
85
101
|
reconnect?: boolean;
|
|
86
|
-
/**
|
|
102
|
+
/** Delay between reconnection attempts in milliseconds */
|
|
87
103
|
reconnectInterval?: number;
|
|
88
104
|
}
|
|
89
105
|
/**
|
|
90
106
|
* Event interceptor configuration.
|
|
107
|
+
*
|
|
108
|
+
* @remarks
|
|
109
|
+
* The interceptor captures and records all incoming/outgoing events (Net, Commands, etc.)
|
|
110
|
+
* for debugging purposes.
|
|
91
111
|
*/
|
|
92
112
|
export interface InterceptorOptions {
|
|
93
113
|
/** Enable event interception */
|
|
94
114
|
enabled: boolean;
|
|
95
|
-
/**
|
|
115
|
+
/** Whether to keep a history of events in memory */
|
|
96
116
|
recordHistory: boolean;
|
|
97
|
-
/** Maximum events to keep in history */
|
|
117
|
+
/** Maximum number of events to keep in the history buffer */
|
|
98
118
|
maxHistorySize: number;
|
|
99
119
|
}
|
|
100
120
|
/**
|
|
101
121
|
* Player simulator configuration.
|
|
122
|
+
*
|
|
123
|
+
* @remarks
|
|
124
|
+
* The simulator allows for creating "virtual" players that the framework
|
|
125
|
+
* treats as real, enabling testing of permissions, economy, and logic without game clients.
|
|
102
126
|
*/
|
|
103
127
|
export interface SimulatorOptions {
|
|
104
|
-
/** Enable player simulation */
|
|
128
|
+
/** Enable player simulation features */
|
|
105
129
|
enabled: boolean;
|
|
106
|
-
/** Number of players to
|
|
130
|
+
/** Number of virtual players to connect automatically on startup */
|
|
107
131
|
autoConnectPlayers: number;
|
|
108
132
|
}
|
|
109
133
|
/**
|
|
110
134
|
* Main DevMode configuration.
|
|
135
|
+
*
|
|
136
|
+
* @remarks
|
|
137
|
+
* Development mode provides tools for debugging, inspection, and simulation.
|
|
138
|
+
* It is dynamically loaded and should be disabled in production.
|
|
111
139
|
*/
|
|
112
140
|
export interface DevModeOptions {
|
|
113
|
-
/**
|
|
141
|
+
/**
|
|
142
|
+
* Master switch for development mode.
|
|
143
|
+
* If false, no dev tools will be loaded.
|
|
144
|
+
*/
|
|
114
145
|
enabled: boolean;
|
|
115
|
-
/**
|
|
116
|
-
|
|
117
|
-
|
|
146
|
+
/**
|
|
147
|
+
* CLI Bridge configuration for telemetry and logs.
|
|
148
|
+
*/
|
|
118
149
|
bridge?: BridgeOptions;
|
|
119
|
-
/**
|
|
150
|
+
/**
|
|
151
|
+
* Event interceptor for debugging network/command flow.
|
|
152
|
+
*/
|
|
120
153
|
interceptor?: InterceptorOptions;
|
|
121
|
-
/**
|
|
154
|
+
/**
|
|
155
|
+
* Virtual player simulator for offline testing.
|
|
156
|
+
*/
|
|
122
157
|
simulator?: SimulatorOptions;
|
|
123
158
|
}
|
|
124
159
|
/**
|
|
@@ -157,5 +192,6 @@ export interface SimulatedPlayer {
|
|
|
157
192
|
}
|
|
158
193
|
/**
|
|
159
194
|
* Default DevMode configuration.
|
|
195
|
+
* Centered on telemetry and simulation, delegating resource management to CLI/txAdmin.
|
|
160
196
|
*/
|
|
161
197
|
export declare const DEFAULT_DEVMODE_OPTIONS: DevModeOptions;
|
|
@@ -3,13 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.DEFAULT_DEVMODE_OPTIONS = void 0;
|
|
4
4
|
/**
|
|
5
5
|
* Default DevMode configuration.
|
|
6
|
+
* Centered on telemetry and simulation, delegating resource management to CLI/txAdmin.
|
|
6
7
|
*/
|
|
7
8
|
exports.DEFAULT_DEVMODE_OPTIONS = {
|
|
8
9
|
enabled: false,
|
|
9
|
-
hotReload: {
|
|
10
|
-
enabled: true,
|
|
11
|
-
port: 3847,
|
|
12
|
-
},
|
|
13
10
|
bridge: {
|
|
14
11
|
url: 'ws://localhost:3848',
|
|
15
12
|
autoConnect: false,
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import { IPlayerInfo } from '../../../adapters';
|
|
2
|
-
import { IEntityServer } from '../../../adapters/contracts/IEntityServer';
|
|
3
2
|
import { INetTransport } from '../../../adapters/contracts/INetTransport';
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
3
|
+
import { IEntityServer } from '../../../adapters/contracts/server/IEntityServer';
|
|
4
|
+
import { IPlayerServer } from '../../../adapters/contracts/server/IPlayerServer';
|
|
5
|
+
import type { PlayerIdentifier } from '../../../adapters/contracts/types/identifier';
|
|
6
|
+
import { Vector3 } from '../../../kernel/utils/vector3';
|
|
7
|
+
import { BaseEntity } from '../../core/entity';
|
|
8
|
+
import { Spatial } from '../../core/spatial';
|
|
6
9
|
import { LinkedID } from '../services/types/linked-id';
|
|
7
10
|
import { PlayerSession } from '../services/types/player-session.object';
|
|
8
11
|
import { SerializedPlayerData } from '../types/core-exports';
|
|
@@ -19,17 +22,20 @@ export interface PlayerAdapters {
|
|
|
19
22
|
/**
|
|
20
23
|
* Core-level representation of a connected player on the server.
|
|
21
24
|
*
|
|
22
|
-
*
|
|
25
|
+
* @remarks
|
|
26
|
+
* This class wraps platform natives and session information.
|
|
23
27
|
* It serves as an abstraction layer to interact with the connected client
|
|
24
28
|
* (kicking, teleporting, emitting events) without dealing with raw IDs everywhere.
|
|
25
29
|
*
|
|
26
|
-
*
|
|
30
|
+
* **Design Note:** This class does NOT contain gameplay logic (money, jobs, inventory).
|
|
27
31
|
* Domain logic should live in your modules' services/models (e.g., `EconomyService`, `JobModel`).
|
|
32
|
+
*
|
|
33
|
+
* This class is platform-agnostic and works across different game engines
|
|
34
|
+
* (FiveM, RageMP, alt:V, etc.) through the adapter pattern.
|
|
28
35
|
*/
|
|
29
|
-
export declare class Player {
|
|
36
|
+
export declare class Player extends BaseEntity implements Spatial {
|
|
30
37
|
private readonly session;
|
|
31
38
|
private readonly adapters;
|
|
32
|
-
private states;
|
|
33
39
|
private position;
|
|
34
40
|
/**
|
|
35
41
|
* Creates a new Player entity instance.
|
|
@@ -40,64 +46,81 @@ export declare class Player {
|
|
|
40
46
|
*/
|
|
41
47
|
constructor(session: PlayerSession, adapters: PlayerAdapters);
|
|
42
48
|
/**
|
|
43
|
-
* The numeric
|
|
44
|
-
*
|
|
49
|
+
* The numeric client/server ID of the player.
|
|
50
|
+
* This is the platform-specific player identifier used for native calls.
|
|
45
51
|
*/
|
|
46
52
|
get clientID(): number;
|
|
47
|
-
/**
|
|
48
|
-
* The FiveM Server ID as a string.
|
|
49
|
-
* Required by most FiveM native functions (e.g., `GetPlayerName`, `DropPlayer`).
|
|
50
|
-
*/
|
|
51
|
-
get clientIDStr(): string;
|
|
52
53
|
/**
|
|
53
54
|
* The persistent Account ID linked to this session, if the player is authenticated.
|
|
54
55
|
* Returns `undefined` if the player has not logged in yet.
|
|
55
56
|
*/
|
|
56
57
|
get accountID(): string | undefined;
|
|
57
58
|
/**
|
|
58
|
-
* The display name of the player
|
|
59
|
+
* The display name of the player.
|
|
59
60
|
*/
|
|
60
61
|
get name(): string;
|
|
61
|
-
getPosition(): Vector3
|
|
62
|
+
getPosition(): Vector3;
|
|
62
63
|
/**
|
|
63
|
-
*
|
|
64
|
+
* Sets the player position using the platform-agnostic API.
|
|
64
65
|
*
|
|
66
|
+
* @param vector - The target coordinates (x, y, z).
|
|
67
|
+
*/
|
|
68
|
+
setPosition(vector: Vector3): void;
|
|
69
|
+
/**
|
|
70
|
+
* Retrieves all platform identifiers associated with the player.
|
|
71
|
+
*
|
|
72
|
+
* @deprecated Use getPlayerIdentifiers() for structured identifier data.
|
|
65
73
|
* @returns An array of identifier strings (e.g., `['steam:11000...', 'license:2332...']`).
|
|
66
74
|
*/
|
|
67
75
|
getIdentifiers(): string[];
|
|
68
76
|
/**
|
|
69
|
-
*
|
|
77
|
+
* Retrieves all identifiers as structured objects.
|
|
78
|
+
*
|
|
79
|
+
* @returns An array of PlayerIdentifier objects with type, value, and raw fields.
|
|
80
|
+
*/
|
|
81
|
+
getPlayerIdentifiers(): PlayerIdentifier[];
|
|
82
|
+
/**
|
|
83
|
+
* Gets a specific identifier by type.
|
|
84
|
+
*
|
|
85
|
+
* @param identifierType - The type of identifier (e.g., 'steam', 'license', 'discord')
|
|
86
|
+
* @returns The identifier string or undefined if not found
|
|
87
|
+
*/
|
|
88
|
+
getIdentifier(identifierType: string): string | undefined;
|
|
89
|
+
/**
|
|
90
|
+
* Gets the player's license identifier.
|
|
91
|
+
* @deprecated Use getIdentifier('license') for cross-platform compatibility.
|
|
70
92
|
*/
|
|
71
93
|
getLicense(): string | undefined;
|
|
72
|
-
getIdentifier(identifier: string): string | undefined;
|
|
73
94
|
/**
|
|
74
|
-
* Sends a network event exclusively to this specific player (
|
|
75
|
-
* Wrapper for `emitNet` ensuring the correct target Source ID is used.
|
|
95
|
+
* Sends a network event exclusively to this specific player (client-side).
|
|
76
96
|
*
|
|
77
97
|
* @param eventName - The name of the event to trigger on the client.
|
|
78
98
|
* @param args - Data to send to the client.
|
|
79
99
|
*/
|
|
80
100
|
emit(eventName: string, ...args: any[]): void;
|
|
81
|
-
/** used to send a private message to the player */
|
|
82
|
-
send(message: string, type?: 'chat' | 'error' | 'success' | 'warning'): void;
|
|
83
101
|
/**
|
|
84
|
-
*
|
|
102
|
+
* Sends a private message to the player.
|
|
85
103
|
*
|
|
86
|
-
*
|
|
87
|
-
*
|
|
88
|
-
*
|
|
89
|
-
* @param vector - The target coordinates (x, y, z).
|
|
104
|
+
* @param message - The message text
|
|
105
|
+
* @param type - Message type for styling
|
|
90
106
|
*/
|
|
91
|
-
|
|
107
|
+
send(message: string, type?: 'chat' | 'error' | 'success' | 'warning'): void;
|
|
92
108
|
/**
|
|
93
|
-
* Requests the
|
|
109
|
+
* Requests the client to teleport via the spawner system.
|
|
94
110
|
*
|
|
111
|
+
* @remarks
|
|
95
112
|
* This method is preferred for gameplay logic as it allows the client to handle
|
|
96
113
|
* loading screens, fading, and collision loading gracefully.
|
|
97
114
|
*
|
|
98
115
|
* @param vector - The target coordinates (x, y, z).
|
|
99
116
|
*/
|
|
100
|
-
|
|
117
|
+
teleport(vector: Vector3): void;
|
|
118
|
+
/**
|
|
119
|
+
* Spawns the player at a position with a specific model.
|
|
120
|
+
*
|
|
121
|
+
* @param vector - The spawn coordinates
|
|
122
|
+
* @param model - The ped model to use (default: 'mp_m_freemode_01')
|
|
123
|
+
*/
|
|
101
124
|
spawn(vector: Vector3, model?: string): void;
|
|
102
125
|
/**
|
|
103
126
|
* Disconnects the player from the server.
|
|
@@ -106,12 +129,24 @@ export declare class Player {
|
|
|
106
129
|
*/
|
|
107
130
|
kick(reason?: string): void;
|
|
108
131
|
/**
|
|
109
|
-
* Sets the routing bucket (virtual world
|
|
132
|
+
* Sets the routing bucket (virtual world/dimension) for the player.
|
|
110
133
|
* Players in different buckets cannot see or interact with each other.
|
|
111
134
|
*
|
|
112
135
|
* @param bucket - The bucket ID (0 is the default shared world).
|
|
113
136
|
*/
|
|
114
137
|
setRoutingBucket(bucket: number): void;
|
|
138
|
+
/**
|
|
139
|
+
* Gets the current routing bucket.
|
|
140
|
+
*/
|
|
141
|
+
getRoutingBucket(): number;
|
|
142
|
+
/**
|
|
143
|
+
* Sets the player dimension (alias for setRoutingBucket).
|
|
144
|
+
*/
|
|
145
|
+
set dimension(value: number);
|
|
146
|
+
/**
|
|
147
|
+
* Gets the player dimension (alias for getRoutingBucket).
|
|
148
|
+
*/
|
|
149
|
+
get dimension(): number;
|
|
115
150
|
/**
|
|
116
151
|
* Stores arbitrary transient metadata for this player's session.
|
|
117
152
|
* Useful for flags like `isDead`, `isInRaid`, `lastLocation`, etc.
|
|
@@ -119,11 +154,10 @@ export declare class Player {
|
|
|
119
154
|
* @param key - The unique key for the metadata.
|
|
120
155
|
* @param value - The value to store.
|
|
121
156
|
*/
|
|
122
|
-
setMeta(key: string, value:
|
|
157
|
+
setMeta<T = unknown>(key: string, value: T): void;
|
|
123
158
|
/**
|
|
124
159
|
* Retrieves metadata previously stored in the session.
|
|
125
160
|
*
|
|
126
|
-
* @template T - The expected type of the value.
|
|
127
161
|
* @param key - The metadata key.
|
|
128
162
|
* @returns The value cast to T, or `undefined` if not set.
|
|
129
163
|
*/
|
|
@@ -132,24 +166,22 @@ export declare class Player {
|
|
|
132
166
|
* Links a persistent Account ID to the current session.
|
|
133
167
|
* Should be called after successful authentication.
|
|
134
168
|
*
|
|
135
|
-
* @param accountID - The unique ID from the
|
|
169
|
+
* @param accountID - The unique ID from the persistent storage.
|
|
136
170
|
*/
|
|
137
171
|
linkAccount(accountID: LinkedID): void;
|
|
172
|
+
/**
|
|
173
|
+
* Unlinks the account from the current session.
|
|
174
|
+
*/
|
|
138
175
|
unlinkAccount(): void;
|
|
139
176
|
/**
|
|
140
177
|
* Checks if the player currently possesses a specific state flag.
|
|
141
178
|
*
|
|
142
179
|
* @param state - The unique string identifier of the state (e.g., 'dead', 'cuffed').
|
|
143
|
-
* @returns `true` if the state is active, `false` otherwise.
|
|
144
180
|
*/
|
|
145
181
|
hasState(state: string): boolean;
|
|
146
182
|
/**
|
|
147
183
|
* Applies a state flag to the player.
|
|
148
184
|
*
|
|
149
|
-
* @remarks
|
|
150
|
-
* Since states are stored in a `Set`, adding an existing state has no effect (idempotent).
|
|
151
|
-
* Ideally, this should trigger a sync event to the client if needed.
|
|
152
|
-
*
|
|
153
185
|
* @param state - The state key to add.
|
|
154
186
|
*/
|
|
155
187
|
addState(state: string): void;
|
|
@@ -163,48 +195,32 @@ export declare class Player {
|
|
|
163
195
|
* Toggles the presence of a state flag.
|
|
164
196
|
*
|
|
165
197
|
* @param state - The state key to toggle.
|
|
166
|
-
* @param force - If provided, forces the state to be added
|
|
167
|
-
*
|
|
168
|
-
* @returns The final status of the state (`true` if active, `false` if inactive).
|
|
169
|
-
*
|
|
170
|
-
* @example
|
|
171
|
-
* ```ts
|
|
172
|
-
* // Standard toggle
|
|
173
|
-
* player.toggleState('duty'); // turns on if off, off if on
|
|
174
|
-
*
|
|
175
|
-
* // Force enable (equivalent to addState but returns boolean)
|
|
176
|
-
* player.toggleState('duty', true); // always results in true
|
|
177
|
-
* ```
|
|
198
|
+
* @param force - If provided, forces the state to be added or removed.
|
|
199
|
+
* @returns The final status of the state.
|
|
178
200
|
*/
|
|
179
201
|
toggleState(state: string, force?: boolean): boolean;
|
|
180
202
|
/**
|
|
181
|
-
* Retrieves
|
|
182
|
-
*
|
|
183
|
-
* @returns An array containing all active state keys.
|
|
203
|
+
* Retrieves all currently active state flags.
|
|
184
204
|
*/
|
|
185
205
|
getStates(): string[];
|
|
186
206
|
/**
|
|
187
207
|
* Gets the current health of the player's ped.
|
|
188
|
-
*
|
|
189
|
-
* @returns Current health value (0-200, where 100 is dead).
|
|
190
208
|
*/
|
|
191
209
|
getHealth(): number;
|
|
192
210
|
/**
|
|
193
211
|
* Sets the health of the player's ped.
|
|
194
212
|
*
|
|
195
|
-
* @param health - Health value to set (
|
|
213
|
+
* @param health - Health value to set (platform-specific range).
|
|
196
214
|
*/
|
|
197
215
|
setHealth(health: number): void;
|
|
198
216
|
/**
|
|
199
217
|
* Gets the current armor of the player's ped.
|
|
200
|
-
*
|
|
201
|
-
* @returns Current armor value (0-100).
|
|
202
218
|
*/
|
|
203
219
|
getArmor(): number;
|
|
204
220
|
/**
|
|
205
221
|
* Sets the armor of the player's ped.
|
|
206
222
|
*
|
|
207
|
-
* @param armor - Armor value to set (0-100).
|
|
223
|
+
* @param armor - Armor value to set (typically 0-100).
|
|
208
224
|
*/
|
|
209
225
|
setArmor(armor: number): void;
|
|
210
226
|
/**
|
|
@@ -214,16 +230,14 @@ export declare class Player {
|
|
|
214
230
|
/**
|
|
215
231
|
* Checks if the player is alive.
|
|
216
232
|
*
|
|
217
|
-
* @
|
|
233
|
+
* @remarks
|
|
234
|
+
* The threshold (100) is platform-specific. In GTA V-based platforms,
|
|
235
|
+
* health below 100 means dead.
|
|
218
236
|
*/
|
|
219
237
|
isAlive(): boolean;
|
|
220
238
|
/**
|
|
221
239
|
* Serializes the player data for cross-resource transfer.
|
|
222
240
|
*
|
|
223
|
-
* @remarks
|
|
224
|
-
* Creates a plain object representation of the player session that can be
|
|
225
|
-
* safely transferred between resources via FiveM exports.
|
|
226
|
-
*
|
|
227
241
|
* @returns Serialized player data DTO
|
|
228
242
|
*/
|
|
229
243
|
serialize(): SerializedPlayerData;
|