import * as firebase from 'firebase'; import { Observable } from 'rxjs'; import { Message } from '../domain/message/message'; import { Id } from '../firebase/type'; export declare type MessageDoc = Message & { createdAt: firebase.firestore.Timestamp; }; export declare function messageMapper(messageDocRef: MessageDoc): Message; export declare type MessagesData = { roomId: Id; messages: Message[]; }; export declare class MessageObserver { private readonly _messages$; private readonly _close$; get messages$(): Observable; fetchMessage(roomId: Id, limit?: number, startAfter?: Date): void; dispose(): void; }