import { DomainCommand } from '../protocol/commands/domain-command'; import { chatEvents } from '..'; import { DomainEvent } from '../protocol/events/domain-event'; import { UUIDGenerator } from '../utils/uuid-generator'; import { Observable } from 'rxjs'; import { WebSocketSubject } from 'rxjs/webSocket'; import { ArtichokeMessage } from '../protocol/artichoke-message'; import { roomCommand } from '../protocol/commands/room-commands'; export declare class WebsocketClient { private socket$; private uuidGenerator; private askTimeoutMs; constructor(socket$: WebSocketSubject, uuidGenerator: UUIDGenerator, askTimeoutMs: number); get connection$(): Observable; send(command: DomainCommand): void; /** * Cold observable * @param command Message */ ask(command: roomCommand.SendMessage | roomCommand.SendCustomMessage): Observable; }