UNPKG

nodito

Version:

Una librería para aprender juegos por turnos en node.

49 lines (48 loc) 1.57 kB
import { IMsgFromServer } from "./from-server/IFromServer"; import { Game } from "./Game"; import { Player } from "./Player"; import { User } from "./User"; export declare class Room<TGamePlayer extends Player = Player> { game: Game<Room>; protected maxPlayers: number; protected playerMaker: new () => Player; protected id: string; protected users: Array<User<TGamePlayer>>; protected startDate: Date | null; protected endDate: Date | null; protected type: string; constructor(game: Game<Room>, maxPlayers: number, playerMaker: new () => Player, id?: string); getId(): string; add(u: User<TGamePlayer>): false | undefined; count(): number; find(u: User): User | undefined; findById(id: string): User | undefined; remove(u: User): void; empty(): boolean; isReady(): boolean; isPlaying(): boolean; start(): void; finish(): void; isFinished(): boolean; toClient(): { count: number; id: string; isPlaying: boolean; owner: { id: string; name: string; playing: boolean | null; turn: {} | null; } | null; total: number; type: string; }; each(fn: (p: User) => void): void; getPlayers(): Array<User<TGamePlayer>>; getGamePlayers(): TGamePlayer[]; sendStatusToAll(): void; filterPlayer(fn: (x: User) => boolean): User<TGamePlayer>[]; protected owner(): User<TGamePlayer>; protected sendAll(msg: IMsgFromServer): void; protected getType(): string; }