import { Service } from '../../services/service'; import { Subscription } from 'rxjs'; export declare const PRESENCE_HELPER_SVC = "PresenceHelperService"; /** * @public * @description PresenceHelperService Events. */ export declare enum PresenceHelperServiceEvents { /** * @event RECONNECT_PRESENCE_SENT * @description This RB event is send after reconnection, when the initial presence is being send to xmpp (we consider that the client is now fully connected) */ RECONNECT_PRESENCE_SENT = "RECONNECT_PRESENCE_SENT", /** * @event ALL_CALLS_ENDED * @description This RB event is send when all calls are ended */ ALL_CALLS_ENDED = "ALL_CALLS_ENDED" } export declare class PresenceHelperService extends Service { private mainService; private logger; private contactService; private eventService; private webinarService?; private webrtcP2PService?; private webConferenceService?; private webrtcConfigAndUtils?; private eventListeners; private rxSubject; static getInstance(): PresenceHelperService; static build(): PresenceHelperService; /** * @public * @function subscribe * @instance * @description * Subscribe to updates on the current calls sessions (all events are of RBEvent type {name: string, data:any}); * All public events that are fired by this service are described in the documentation. * NB There might be some events that are not documented here, they should be ignored * @param {any} handler The call-back function that will be subscribed to the RxJS subject * @returns {Subscription} Returns RxJS Subscription */ subscribe(handler: any): Subscription; private constructor(); start(): Promise; stop(): void; resendPresenceAfterReconnect(): void; resetBusyStateIfNeeded(): void; /** * Method isUserCurrentlyInCall * @public * @memberof PresenceHelperService * @returns {boolean} True if user is currently in a webrtc call or conference or webinar * The function will return true if the user is currently engaged in any kind of webrtc call / conference * This will not return true if the user has PBX calls in office mode, but only when * the call or the conference are done on this current device; */ isUserCurrentlyInCall(): boolean; } //# sourceMappingURL=presenceHelper.service.d.ts.map