import { Observable } from 'rxjs'; import { TextMessage, ImageMessage, NoteMessage, MediaMessage } from '../domain/message/message'; import { Id } from '../firebase/type'; import { MessageObserver } from './message'; import { AlreadyReadMessageObserver } from './alreadyReadMessage'; declare type MergeReadCount = T & { readCount: number; }; declare type RoomMessagesData = (MergeReadCount | MergeReadCount | MergeReadCount | MergeReadCount)[]; export declare class RoomMessageObserver { private readonly messageObserver; private readonly alreadyReadMessageObserver; private readonly _roomMessages$; private readonly _close$; constructor(messageObserver: MessageObserver, alreadyReadMessageObserver: AlreadyReadMessageObserver); get roomMessages$(): Observable; fetchRoomMessage(roomId: Id, limit?: number, startAfter?: Date): void; dispose(): void; } export {};