UNPKG

@dill-pixel/plugin-colyseus

Version:

Colyseus

26 lines 1.78 kB
import { Schema } from '@colyseus/schema'; import { Room } from 'colyseus.js'; import { IApplication, IPlugin, Plugin } from 'dill-pixel'; import * as Colyseus from 'colyseus.js'; export type SchemaConstructor<T = Schema> = new (...args: any[]) => T; export type ColyseusPluginOptions = { port: string; }; export interface IColyseusPlugin extends IPlugin<ColyseusPluginOptions> { readonly client: Colyseus.Client; initialize(options?: Partial<ColyseusPluginOptions>, app?: IApplication): void; joinOrCreate<T>(roomName: string, options?: Colyseus.JoinOptions, rootSchema?: SchemaConstructor<T>): Promise<Room<T>>; create<T>(roomName: string, options?: Colyseus.JoinOptions, rootSchema?: SchemaConstructor<T>): Promise<Room<T>>; join<T>(roomName: string, options?: Colyseus.JoinOptions, rootSchema?: SchemaConstructor<T>): Promise<Room<T>>; joinById<T>(roomId: string, options?: Colyseus.JoinOptions, rootSchema?: SchemaConstructor<T>): Promise<Room<T>>; } export declare class ColyseusPlugin extends Plugin<ColyseusPluginOptions> implements IColyseusPlugin { private _client; get client(): Colyseus.Client; initialize(options?: Partial<ColyseusPluginOptions>, app?: IApplication): Promise<void>; joinOrCreate<T = any>(roomName: string, options?: Colyseus.JoinOptions, rootSchema?: SchemaConstructor<T>): Promise<Room<T>>; join<T = any>(roomName: string, options?: Colyseus.JoinOptions, rootSchema?: SchemaConstructor<T>): Promise<Room<T>>; joinById<T = any>(roomId: string, options?: Colyseus.JoinOptions, rootSchema?: SchemaConstructor<T>): Promise<Room<T>>; create<T = any>(roomName: string, options?: Colyseus.JoinOptions, rootSchema?: SchemaConstructor<T>): Promise<Room<T>>; } //# sourceMappingURL=ColyseusPlugin.d.ts.map