import type { NativeEventEmitter } from 'react-native'; import { ChatPushConfig, PushDisplayStyle } from './common/ChatPushConfig'; import { Native } from './__internal__/Native'; /** * The message push configuration options. */ export declare class ChatPushManager extends Native { private static TAG; constructor(); setNativeListener(_event: NativeEventEmitter): void; /** * Get push configuration information from the local cache. * * @returns The push config information. * * @throws A description of the exception. See {@link ChatError}. */ getPushConfigsFromCache(): Promise; /** * Gets the push configurations from the server. * * @returns The push config information. * * @throws A description of the exception. See {@link ChatError}. */ fetchPushConfigsFromServer(): Promise; /** * Turns on the push notification. * * @throws A description of the exception. See {@link ChatError}. */ enableOfflinePush(): Promise; /** * Turns off the push notification. * * @param start The start hour(24-hour clock). * @param end The end hour(24-hour clock). * * @throws A description of the exception. See {@link ChatError}. */ disableOfflinePush(start: number, end: number): Promise; /** * Sets whether to turn on or turn off the push notification for the the specified groups. * * @param groupIds The list of groups to be set. * @param enablePush enable push notification. * * @throws A description of the exception. See {@link ChatError}. */ updatePushServiceForGroup(groupIds: Array, enablePush: boolean): Promise; /** * Sets whether to turn on or turn off the push notification for the the specified users. * * @param userIds The list of users to be set. * @param enablePush enable push notification. * * @throws A description of the exception. See {@link ChatError}. */ updatePushServiceFroUsers(userIds: Array, enablePush: boolean): Promise; /** * Gets the list of groups which have blocked the push notification. * * @returns The list of groups that blocked the push notification. * * @throws A description of the exception. See {@link ChatError}. */ getNoPushGroupsFromCache(): Promise>; /** * Gets the list of users which have blocked the push notification. * * @returns The list of user that blocked the push notification. * * @throws A description of the exception. See {@link ChatError}. */ getNoPushUsersFromCache(): Promise>; /** * Updates the push display nickname of the current user. * * This method can be used to set a push display nickname, the push display nickname will be used to show for offline push notification. * * @param nickname The push display nickname, which is different from the nickname in the user profile. * * @throws A description of the exception. See {@link ChatError}. */ updatePushNickname(nickname: string): Promise; /** * Updates the push message style. The default value is {@link PushDisplayStyle#Simple}. * * @param displayStyle The push message display style. * * @throws A description of the exception. See {@link ChatError}. */ updatePushDisplayStyle(displayStyle: PushDisplayStyle): Promise; /** * Updates the HMS push token. * * @param token The HMS push token. * * @throws A description of the exception. See {@link ChatError}. */ updateHMSPushToken(token: string): Promise; /** * Updates the FCM push token. * * @param token The FCM push token. * * @throws A description of the exception. See {@link ChatError}. */ updateFCMPushToken(token: string): Promise; /** * Updates the APNs push token. * * @param token The APNs push token. * * @throws A description of the exception. See {@link ChatError}. */ updateAPNsDeviceToken(token: string): Promise; }