wam-extensions
Version:
Unofficial extensions to the Web Audio Module 2 API
24 lines (23 loc) • 795 B
TypeScript
export declare type MultiplayerUser = {
id: string;
name: string;
color: string;
};
export declare type MultiplayerState = {
users: MultiplayerUser[];
userId: string;
};
export interface MultiplayerExtensionInterface {
onConnect(): void;
onDisconnect(): void;
userListUpdated(userState: MultiplayerState): void;
receiveMessage(userId: string, message: any): void;
}
export declare class MultiplayerExtension {
delegates: Map<string, MultiplayerExtensionInterface>;
userState: MultiplayerState;
constructor(userState: MultiplayerState);
register(pluginId: string, delegate?: MultiplayerExtensionInterface): void;
broadcastMessage?: (pluginId: string, message: any) => Promise<boolean>;
updateUsers(userState: MultiplayerState): void;
}