@exmg/livery
Version:
Ex Machina Group Livery Web SDK.
25 lines (24 loc) • 1.26 kB
TypeScript
import { LiveryBridge } from '@exmg/livery-interactive';
import type { LiveryPlayer } from './livery-player/LiveryPlayer';
export default class PlayerBridge extends LiveryBridge {
private player;
private portraitQuery;
constructor(targetWindow: Window, targetOrigin: string, player: LiveryPlayer);
/**
* Register `handler` function to be called with `arg` and `listener` when sendPlayerCommand() is called
* from the interactive layer side with matching `name`.
*/
registerPlayerCommand(name: string, handler: (arg: unknown, listener: (value: unknown) => void) => unknown): void;
/**
* Returns promise of value returned by the interactive layer's custom command handler with matching `name` that is passed `arg`.
* Any `handler` `listener` calls will subsequently also be bridged to this `listener` callback.
*/
sendInteractiveCommand<T>(name: string, arg?: unknown, listener?: (value: T) => void): Promise<T>;
/**
* Unregister custom player bridge command by `name`.
*/
unregisterPlayerCommand(name: string): void;
protected handleCommand(name: string, arg: unknown, listener: (value: unknown) => void): unknown;
private subscribeOrientation;
private subscribeStreamPhase;
}