interface IVisibility { GONE: 'GONE'; VISIBLE: 'VISIBLE'; } declare const Visibility: IVisibility; type VisibilityType = IVisibility[keyof IVisibility]; interface INotifications { UNREAD_COUNT: 'UNREAD_CHANGE_NOTIFICATION'; WINDOW_DID_SHOW: 'WINDOW_DID_SHOW'; WINDOW_DID_HIDE: 'WINDOW_DID_HIDE'; } declare const Notifications: INotifications; /** * sendTokenToIntercom * @param token */ export function sendTokenToIntercom(token: any): Promise; /** * presentCarousel * @param carouselID */ export function presentCarousel(carouselID: String): Promise; /** * presentArticle * @param articleID */ export function presentArticle(articleID: String): Promise; /** * registerUnidentifiedUser * @returns {Promise} */ export function registerUnidentifiedUser(): Promise; /** * updateUser * @param { email?: string,user_id?: string, name?: string, phone?: string, language_override?: string, signed_up_at?: number, unsubscribed_from_emails?: boolean, companies?: Array<{company_id?: string, name?: string, created_at?: number, monthly_spend?: number, plan?: string, custom_attributes?: { [key: string]: string } }>, custom_attributes?: { [key: string]: string } } attributes * @returns {Promise} */ export function updateUser(attributes: { email?: string; user_id?: string; name?: string; phone?: string; language_override?: string; signed_up_at?: number; unsubscribed_from_emails?: boolean; companies?: Array<{ company_id?: string; name?: string; created_at?: number; monthly_spend?: number; plan?: string; custom_attributes?: { [key: string]: string }; }>; custom_attributes?: { [key: string]: string }; }): Promise; /** * registerIdentifiedUser * @param {userId: string} | {email: string} options * @returns {Promise} */ export function registerIdentifiedUser(options: { userId: string } | { email: string }): Promise; /** * logout * @returns {Promise} */ export function logout(): Promise; /** * Log an event * @param {string} eventName * @param {[key: string]: string | number | boolean } metadata */ export function logEvent(eventName: string, metadata: { [key: string]: string | number | boolean }): Promise; /** * handlePushMessage * @returns {Promise} */ export function handlePushMessage(): Promise; /** * displayMessenger * @returns {Promise} */ export function displayMessenger(): Promise; /** * hideMessenger * @returns {Promise} */ export function hideMessenger(): Promise; /** * Show Message Composer */ export function displayMessageComposer(): Promise; /** * displayMessageComposerWithInitialMessage * @param {string} message * @returns {Promise} */ export function displayMessageComposerWithInitialMessage(message: string): Promise; /** * displayConversationsList * @returns {Promise} */ export function displayConversationsList(): Promise; /** * getUnreadConversationCount * @returns {Promise} */ export function getUnreadConversationCount(): Promise; /** * displayHelpCenter * @returns {Promise} */ export function displayHelpCenter(): Promise; /** * setLauncherVisibility * @param {string} visibility * @returns {Promise} */ export function setLauncherVisibility(visibility: VisibilityType): Promise; /** * setLauncherVisibility * @param {string} visibility * @returns {Promise} */ export function setInAppMessageVisibility(visibility: VisibilityType): Promise; /** * setupAPN * @param {string} deviceToken * @returns {Promise} */ export function setupAPN(deviceToken: string): Promise; /** * setUserHash * @param {string} userHash * @returns {Promise} */ export function setUserHash(userHash: string): Promise; /** * setBottomPadding * @param {number} padding * @returns {Promise} */ export function setBottomPadding(padding: number): Promise; /** * addEventListener * @param {string} type * @param {() => void} handler */ export function addEventListener(type: string, handler: (event?: any) => void): void; /** * removeEventListener * @param {string} type * @param {() => void} handler */ export function removeEventListener(type: string, handler: (event?: any) => void): void; /** * To enable iOS push notifications, simply call the following anywhere in your code: */ export function registerForPush(): Promise;