import { DomainCommand } from './domain-command'; import { Ref, Context } from '../protocol'; export declare namespace roomCommand { abstract class RoomCommand implements DomainCommand { readonly roomId: string; readonly tag: string; readonly __discriminator__ = "domainCommand"; protected constructor(roomId: string, tag: string); } class SendMessage extends RoomCommand { static readonly tag = "room_send_message"; readonly ref?: Ref; readonly body: string; readonly context: Context; constructor(roomId: string, body: string, context: Context, ref?: Ref); } class SendCustomMessage extends RoomCommand { static readonly tag = "room_send_custom_message"; readonly ref?: Ref; readonly body: string; readonly context: Context; readonly subtag: string; constructor(roomId: string, body: string, subtag: string, context: Context, ref?: Ref); } class SendTyping extends RoomCommand { readonly body?: string | undefined; static readonly tag = "room_send_typing"; constructor(roomId: string, body?: string | undefined); } class SendMark extends RoomCommand { static readonly tag = "room_send_mark"; readonly timestamp: number; constructor(roomId: string, timestamp: number); } class ConfirmMessageDelivery extends RoomCommand { static readonly tag = "room_confirm_message_delivery"; readonly eventId: string; readonly timestamp: number; constructor(roomId: string, eventId: string, timestamp: number); } }