Skip to main content

Interface: IPlatformDriver<TPlayer>

Abstraction over the underlying platform’s event and WebView APIs. Implement this interface to integrate Aurora with a specific multiplayer platform.

Type Parameters

TPlayer

TPlayer = unknown

The native player type provided by the platform (e.g., server or client player object).

Methods

createWebview()?

optional createWebview(id, url, focused, hidden): IWebView

Creates a new WebView instance on the client side.

Parameters

id

Unique identifier for this WebView instance.

string | number

url

string

The URL to load in the WebView.

focused

boolean

hidden

boolean

Returns

IWebView

An IWebView wrapper around the platform-specific WebView.


destroyWebview()?

optional destroyWebview(id): void

Destroys an existing WebView instance.

Parameters

id

The unique identifier of the WebView to destroy.

string | number

Returns

void


emit()

emit(eventName, ...args): void

Emits a general event to all listeners (server or client).

Parameters

eventName

string

The name of the event to emit.

args

...unknown[]

Arguments to pass along to event listeners.

Returns

void


emitClient()?

optional emitClient(player, eventName, ...args): void

Emits a client-specific event to a single player.

Parameters

player

TPlayer

The native player object to target.

eventName

string

The name of the client event to emit.

args

...unknown[]

Arguments to pass along to the client listener.

Returns

void


emitServer()?

optional emitServer(eventName, ...args): void

Emits a server-specific event.

Parameters

eventName

string

The name of the server event to emit.

args

...unknown[]

Arguments to pass along to server-side listeners.

Returns

void


on()

on(eventName, listener): void

Subscribes to a general platform event (server-side or client-side).

Parameters

eventName

string

The name of the event (e.g., 'playerConnect', 'resourceStart').

listener

(...args) => void

Callback invoked when the event fires; receives the raw event arguments.

Returns

void


onClient()?

optional onClient(eventName, listener): void

Subscribes to a client-originated event.

Parameters

eventName

string

The name of the client event.

listener

(player, ...args) => void

Callback invoked with the player instance and event arguments.

Returns

void


onServer()?

optional onServer(eventName, listener): void

Subscribes to a server-originated event.

Parameters

eventName

string

The name of the server event.

listener

(player, ...args) => void

Callback invoked with the player instance and event arguments.

Returns

void