@hsaadawy/ngx-chat
Version:
31 lines (30 loc) • 1.44 kB
TypeScript
import { Recipient } from '../../../../core/recipient';
import { Stanza } from '../../../../core/stanza';
import { LogService } from '../../../log.service';
import { XmppChatAdapter } from '../xmpp-chat-adapter.service';
import { AbstractXmppPlugin } from './abstract-xmpp-plugin';
import { MultiUserChatPlugin } from './multi-user-chat.plugin';
import { ServiceDiscoveryPlugin } from './service-discovery.plugin';
import { MessagePlugin } from './message.plugin';
/**
* https://xmpp.org/extensions/xep-0313.html
* Message Archive Management
*/
export declare class MessageArchivePlugin extends AbstractXmppPlugin {
private readonly chatService;
private readonly serviceDiscoveryPlugin;
private readonly multiUserChatPlugin;
private readonly logService;
private readonly messagePlugin;
private readonly mamMessageReceived$;
constructor(chatService: XmppChatAdapter, serviceDiscoveryPlugin: ServiceDiscoveryPlugin, multiUserChatPlugin: MultiUserChatPlugin, logService: LogService, messagePlugin: MessagePlugin);
private requestNewestMessages;
loadMostRecentUnloadedMessages(recipient: Recipient): Promise<void>;
loadAllMessages(): Promise<void>;
private supportsMessageArchiveManagement;
handleStanza(stanza: Stanza): boolean;
private isMamMessageStanza;
private handleMamMessageStanza;
private handleArchivedMessage;
private handlePubSubEvent;
}