UNPKG

@hsaadawy/ngx-chat

Version:
26 lines (25 loc) 1.37 kB
import { Element } from 'ltx'; import { Subject } from 'rxjs'; import { IqResponseStanza, Stanza } from '../../../../core/stanza'; import { XmppChatAdapter } from '../xmpp-chat-adapter.service'; import { AbstractXmppPlugin } from './abstract-xmpp-plugin'; import { ServiceDiscoveryPlugin } from './service-discovery.plugin'; export declare const PUBSUB_EVENT_XMLNS = "http://jabber.org/protocol/pubsub#event"; /** * XEP-0060 Publish Subscribe (https://xmpp.org/extensions/xep-0060.html) * XEP-0223 Persistent Storage of Private Data via PubSub (https://xmpp.org/extensions/xep-0223.html) */ export declare class PublishSubscribePlugin extends AbstractXmppPlugin { private readonly xmppChatAdapter; private readonly serviceDiscoveryPlugin; readonly publish$: Subject<Stanza>; private readonly supportsPrivatePublish; constructor(xmppChatAdapter: XmppChatAdapter, serviceDiscoveryPlugin: ServiceDiscoveryPlugin); onBeforeOnline(): Promise<void>; onOffline(): void; storePrivatePayloadPersistent(node: string, id: string, data: Element): Promise<IqResponseStanza<'result'>>; privateNotify(node: string, data?: Element, id?: string): Promise<IqResponseStanza>; handleStanza(stanza: Stanza): boolean; retrieveNodeItems(node: string): Promise<Element[]>; private determineSupportForPrivatePublish; }