lib/events
Event system exports.
Interfaces
| Interface | Description |
|---|---|
| Deferrals | Deferral object for async connection validation. |
| NativeEventApi | API shape for a native FiveM event wrapper. Provides a typed .on() method that returns a disposable for cleanup. |
| PopulationPedSetters | Fired when a population ped is being created. Can be used to customize or cancel ambient ped spawning. |
| SpawnInfo | Fired when the player spawns (initial spawn or respawn). |
Type Aliases
| Type Alias | Description |
|---|---|
| PlayerId | - |
Variables
fivemClientEvents
const fivemClientEvents: {
entityCreated: NativeEventApi<(entityHandle: number) => void>;
entityRemoved: NativeEventApi<(entityHandle: number) => void>;
gameEventTriggered: NativeEventApi<(eventName: string, args: unknown[]) => void>;
onClientResourceStart: NativeEventApi<(resourceName: string) => void>;
onClientResourceStop: NativeEventApi<(resourceName: string) => void>;
playerPedChanged: NativeEventApi<(oldPed: number, newPed: number) => void>;
playerSpawned: NativeEventApi<(spawnInfo: SpawnInfo) => void>;
populationPedCreating: NativeEventApi<(x: number, y: number, z: number, model: number, setters: PopulationPedSetters) => void>;
};Defined in: src/lib/client/events.ts:267
Pre-defined FiveM native client events with type safety and automatic cleanup.
Each event's .on() method returns a disposable that should be stored and
disposed in your module's stop() function to prevent handler accumulation.
Type Declaration
| Name | Type | Description | Defined in |
|---|---|---|---|
entityCreated | NativeEventApi<(entityHandle: number) => void> | Fired when an entity enters scope. | src/lib/client/events.ts:290 |
entityRemoved | NativeEventApi<(entityHandle: number) => void> | Fired when an entity leaves scope. | src/lib/client/events.ts:292 |
gameEventTriggered | NativeEventApi<(eventName: string, args: unknown[]) => void> | Fired when a game event is triggered (damage, vehicle entry, etc.). | src/lib/client/events.ts:276 |
onClientResourceStart | NativeEventApi<(resourceName: string) => void> | Fired when a resource starts on the client. | src/lib/client/events.ts:270 |
onClientResourceStop | NativeEventApi<(resourceName: string) => void> | Fired when a resource stops on the client. | src/lib/client/events.ts:272 |
playerPedChanged | NativeEventApi<(oldPed: number, newPed: number) => void> | Fired when the player's ped changes. | src/lib/client/events.ts:284 |
playerSpawned | NativeEventApi<(spawnInfo: SpawnInfo) => void> | Fired when the player spawns. | src/lib/client/events.ts:286 |
populationPedCreating | NativeEventApi<(x: number, y: number, z: number, model: number, setters: PopulationPedSetters) => void> | Fired when an ambient ped is being created. | src/lib/client/events.ts:280 |
fivemEvents
const fivemEvents: {
onResourceStart: NativeEventApi<(resourceName: string) => void>;
onResourceStop: NativeEventApi<(resourceName: string) => void>;
playerConnecting: NativeEventApi<(playerId: number, playerName: string, setKickReason: (reason: string) => void, deferrals: Deferrals) => void>;
playerDropped: NativeEventApi<(playerId: number, reason: string) => void>;
playerJoining: NativeEventApi<(playerId: number) => void>;
};Defined in: src/lib/server/events.ts:184
Pre-defined FiveM native server events with type safety and automatic cleanup.
Each event's .on() method returns an unsubscribe function that should be
called in your module's stop() function to prevent handler accumulation.
Type Declaration
| Name | Type | Description | Defined in |
|---|---|---|---|
onResourceStart | NativeEventApi<(resourceName: string) => void> | Fired when a resource starts. | src/lib/server/events.ts:192 |
onResourceStop | NativeEventApi<(resourceName: string) => void> | Fired when a resource stops. | src/lib/server/events.ts:194 |
playerConnecting | NativeEventApi<(playerId: number, playerName: string, setKickReason: (reason: string) => void, deferrals: Deferrals) => void> | Fired when a player is connecting (supports deferrals). | src/lib/server/events.ts:190 |
playerDropped | NativeEventApi<(playerId: number, reason: string) => void> | Fired when a player disconnects from the server. | src/lib/server/events.ts:188 |
playerJoining | NativeEventApi<(playerId: number) => void> | Fired when a player starts joining the server. | src/lib/server/events.ts:186 |
Functions
| Function | Description |
|---|---|
| clearTrackedEvents | Clear all tracked events (used on resource stop). |
| createNativeEvent | Creates a typed wrapper around a FiveM native event. |
| getActiveEventsByName | Get active events grouped by event name with source information. |
| getActiveEventsBySource | Get active events grouped by source module. |
| getCurrentSource | Gets the current event source as a normalized player ID. |
| getEventStats | Get summary statistics. |
| normalizeSource | Normalizes a FiveM source value to a player ID number. |
| registerEventHandler | Registers an event handler and returns a disposable for cleanup. Works with both local (on) and network (onNet) events. Automatically tracks the registration for debugging purposes. |
| trackEventDisposed | Mark an event handler as disposed. The handler is immediately removed from tracking to prevent memory growth. |
| trackEventRegistration | Track a new event handler registration. |