UNPKG

@hsaadawy/ngx-chat

Version:
23 lines (22 loc) 871 B
import { Subject } from 'rxjs'; import { LogService } from '../services/log.service'; import { Message } from './message'; export interface DateMessagesGroup<T extends Message> { /** is equal to the date where one message on that date was received */ date: Date; messages: T[]; } export declare class MessageStore<T extends Message> { private readonly logService; readonly messages$: Subject<T>; readonly messages: T[]; readonly dateMessageGroups: DateMessagesGroup<T>[]; readonly messageIdToMessage: Map<string, T>; constructor(logService: LogService); addMessage(message: T): boolean; get oldestMessage(): T | undefined; get mostRecentMessage(): T | undefined; get mostRecentMessageReceived(): T | undefined; get mostRecentMessageSent(): T | undefined; private addToDateMessageGroups; }