/// import Clock = require('@gamestdio/clock'); import { Signal } from 'signals.js'; import { StateContainer } from '@gamestdio/state-listener'; import { Connection } from './Connection'; export interface RoomAvailable { roomId: string; clients: number; maxClients: number; metadata?: any; } export declare class Room extends StateContainer { id: string; sessionId: string; name: string; options: any; clock: Clock; remoteClock: Clock; onJoin: Signal; onStateChange: Signal; onMessage: Signal; onError: Signal; onLeave: Signal; connection: Connection; private _previousState; constructor(name: string, options?: any); connect(connection: Connection): void; leave(): void; requestLeave(): void; send(data: any): void; removeAllListeners(): void; protected onMessageCallback(event: any): void; setState(encodedState: Buffer, remoteCurrentTime?: number, remoteElapsedTime?: number): void; patch(binaryPatch: any): void; }