export {}; import { EventEmitter } from "events"; import { Core } from "../Core"; import { Logger } from "./Logger"; /** * @class * @name Events * @description * This module fires every events that come from Rainbow.
* To receive them, you need to subscribe individually to each of the following events
* @fires Events#rainbow_onxmmpeventreceived * @fires Events#rainbow_onxmmprequestsent * @fires Events#rainbow_onrainbowversionwarning * @fires Events#rainbow_onmessageserverreceiptreceived * @fires Events#rainbow_onmessagereceiptreceived * @fires Events#rainbow_onmessagereceiptreadreceived * @fires Events#rainbow_onmessagereceived * @fires Events#rainbow_onsendmessagefailed * @fires Events#rainbow_oncontactpresencechanged * @fires Events#rainbow_onpresencechanged * @fires Events#rainbow_onconversationremoved * @fires Events#rainbow_onconversationchanged * @fires Events#rainbow_onloadConversationHistoryCompleted * @fires Events#rainbow_onallmessagedremovedfromconversationreceived * @fires Events#rainbow_onchatstate * @fires Events#rainbow_oncontactinformationchanged * @fires Events#rainbow_onuserinformationchanged * @fires Events#rainbow_onuserpasswordconfig * @fires Events#rainbow_onuserinvitereceived * @fires Events#rainbow_onuserinviteaccepted * @fires Events#rainbow_onuserinvitecanceled * @fires Events#rainbow_oncontactremovedfromnetwork * @fires Events#rainbow_onbubbleaffiliationchanged * @fires Events#rainbow_onbubblepresencechanged * @fires Events#rainbow_onbubbleownaffiliationchanged * @fires Events#rainbow_onbubbledeleted * @fires Events#rainbow_onbubbleinvitationreceived * @fires Events#rainbow_onbubblecontactinvitationreceived * @fires Events#rainbow_onbubbleconferencestartedreceived * @fires Events#rainbow_onbubbleconferencestoppedreceived * @fires Events#rainbow_onbubbleconferencedelegatereceived * @fires Events#rainbow_onbubbleconferenceupdated * @fires Events#rainbow_onbubblecustomdatachanged * @fires Events#rainbow_onbubblecontactchanged * @fires Events#rainbow_onbubbletopicchanged * @fires Events#rainbow_onbubbleprivilegechanged * @fires Events#rainbow_onbubbleavatarchanged * @fires Events#rainbow_onbubblenamechanged * @fires Events#rainbow_onopeninvitationupdate * @fires Events#rainbow_ongroupcreated * @fires Events#rainbow_ongroupdeleted * @fires Events#rainbow_ongroupupdated * @fires Events#rainbow_onuseraddedingroup * @fires Events#rainbow_onuserremovedfromgroup * @fires Events#rainbow_onstarted * @fires Events#rainbow_onstopped * @fires Events#rainbow_onready * @fires Events#rainbow_onerror * @fires Events#rainbow_onconnected * @fires Events#rainbow_onconnectionerror * @fires Events#rainbow_ondisconnected * @fires Events#rainbow_onreconnecting * @fires Events#rainbow_onfailed * @fires Events#rainbow_oncallupdated * @fires Events#rainbow_onconferenced * @fires Events#rainbow_ontelephonystatuschanged * @fires Events#rainbow_onnomadicstatusevent * @fires Events#rainbow_onvoicemessageupdated * @fires Events#rainbow_onvoicemessagesinfo * @fires Events#rainbow_oncallforwarded * @fires Events#rainbow_onchannelmessagereceived * @fires Events#rainbow_onchannelmyappreciationreceived * @fires Events#rainbow_onchannelmessagedeletedreceived * @fires Events#rainbow_onprofilefeatureupdated * @fires Events#rainbow_onfilecreated * @fires Events#rainbow_onfileupdated * @fires Events#rainbow_onfiledeleted * @fires Events#rainbow_onthumbnailcreated * @fires Events#rainbow_onwebinarupdated * @fires Events#rainbow_onchannelupdated * @fires Events#rainbow_onchannelusersubscription * @fires Events#rainbow_onmediapropose * @fires Events#rainbow_onmediaretract * @fires Events#rainbow_oncalllogupdated * @fires Events#rainbow_oncalllogackupdated * @fires Events#rainbow_onfavoritecreated * @fires Events#rainbow_onfavoriteupdated * @fires Events#rainbow_onfavoritedeleted * @fires Events#rainbow_onxmpperror * @fires Events#rainbow_onalertmessagereceived * @fires Events#rainbow_onbubblescontainercreated * @fires Events#rainbow_onbubblescontainerupdated * @fires Events#rainbow_onbubblescontainerdeleted * @fires Events#rainbow_onusertokenrenewfailed * @fires Events#rainbow_onusertokenwillexpire * @fires Events#rainbow_onbubblepollcreated * @fires Events#rainbow_onbubblepolldeleted * @fires Events#rainbow_onbubblepollpublished * @fires Events#rainbow_onbubblepollunpublished * @fires Events#rainbow_onbubblepollterminated * @fires Events#rainbow_onbubblepollupdated * @fires Events#rainbow_onbubblepollvoted * @fires Events#rainbow_onconnectorcommand * @fires Events#rainbow_onconnectorconfig * @fires Events#rainbow_onconnectorcommandended * @fires Events#rainbow_onconnectorimportstatus * @fires Events#rainbow_onEWSgetevents * @fires Events#rainbow_onEWSgetautoreply * @fires Events#rainbow_onrbvoicerawevent * @fires Events#rainbow_onjoincompanyinvitereceived * @fires Events#rainbow_onjoincompanyrequestreceived * @fires Events#rainbow_onlogsconfig * @fires Events#rainbow_ontaskcreated * @fires Events#rainbow_ontaskupdated * @fires Events#rainbow_ontaskdeleted * @fires Events#rainbow_on429BackoffError * @fires Events#rainbow_onrainbowcpaasreceived * @fires Events#rainbow_ontelephonyrvcp * @fires Events#rainbow_ontelephonyrvcppresence * @fires Events#rainbow_ontelephonypcg * @fires Events#rainbow_ontelephonypcgpresence * @fires Events#rainbow_onconference * @fires Events#rainbow_onpinmanagement * @fires Events#rainbow_onvoicemailreceived */ declare class Events { get logEmitter(): EventEmitter; set logEmitter(value: EventEmitter); _logger: Logger; _filterCallback: Function; _evReceiver: EventEmitter; _evPublisher: EventEmitter; _core: Core; private _logEmitter; sdkPublicEventsName: string[]; waitBeforeBubblePresenceSend: boolean; constructor(_logger: Logger, _filterCallback: Function); listenerData(): { receiver: { listenerCount: number; }; emitter: { listenerCount: number; }; }; get iee(): EventEmitter; get eee(): EventEmitter; /** * @method onLog * @public * @memberof Events * @instance * @param {string} event The event name to subscribe * @param {function} callback The function called when the even is fired * @return {Object} The events instance to be able to chain subscriptions * @description * Subscribe to an event raised when a log is done. */ onLog(event: any, callback: any): EventEmitter; /** * @method removeLogListener * @public * @memberof Events * @instance * @param {string} event The event name to unsubscribe * @param {function} callback The function called when the even is fired * @return {Object} The events instance to be able to chain subscriptions * @description * Unsubscribe to an event raised when a log is done. */ removeLogListener(event: any, callback: any): EventEmitter<[never]>; /** * @method on * @public * @memberof Events * @instance * @param {string} event The event name to subscribe * @param {function} callback The function called when the even is fired * @return {Object} The events instance to be able to chain subscriptions * @description * Subscribe to an event */ on(event: any, callback: any): EventEmitter; /** * @method emit * @private * @memberof Events * @instance * @param {string} eventName name for the event * @param {any} data arguments for the event * @return nothing * @description * Emit an event. */ emit(eventName: any, data: any): void; /** * @method removeListener * @public * @memberof Events * @instance * @param {string} eventName The event name to unsubscribe * @param {function} listener The listener called when the even is fired * @return {Object} The events instance to be able to remove a subscription from chain. * @description * Unsubscribe to an event */ removeListener(eventName: string | symbol, listener: (...args: any[]) => void): EventEmitter; /** * @method once * @public * @memberof Events * @instance * @param {string} event The event name to subscribe * @param {function} callback The function called when the even is fired * @return {Object} The events instance to be able to chain subscriptions * @description * Subscribe to an event only one time (fired only the first time) */ once(event: string, callback: (...args: any[]) => void): EventEmitter; publish(event: string, data: any): void; /** * @method publishEvent * @private * @memberof Events * @instance * @param {...*} args all arguments for the event * @return nothing * @description * Add "rainbow_on" prefix to event name, print it human readable, and raises it. */ publishEvent(...args: any[]): void; setCore(_core: Core): void; } export { Events };