import type { NativeEventEmitter } from 'react-native'; import type { ChatConversation, ChatConversationType } from './common/ChatConversation'; import { ChatSilentModeResult, ChatSilentModeParam } from './common/ChatSilentMode'; import { Native } from './__internal__/Native'; /** * The class for message push configuration options. */ export declare class ChatPushManager extends Native { private static TAG; constructor(); setNativeListener(_event: NativeEventEmitter): void; /** * Sets the offline push for the conversation. * * @param params - * - convId: The conversation ID. * - convType: The conversation type. * - option: The configuration options for the offline push. * * @throws A description of the exception. See {@link ChatError}. */ setSilentModeForConversation(params: { convId: string; convType: ChatConversationType; option: ChatSilentModeParam; }): Promise; /** * Clears the offline push settings of the conversation. * * After clearing, the conversation uses the offline push settings of the app. See {@link EMPushManager#setSilentModeForAll(ChatSilentModeParam)}. * * @param params - * - convId: The conversation ID. * - convType: The conversation type. * * @throws A description of the exception. See {@link ChatError}. */ removeSilentModeForConversation(params: { convId: string; convType: ChatConversationType; }): Promise; /** * Gets the offline push settings of the conversation. * * @param params - * - convId: The conversation ID. * - convType: The conversation type. * * @returns The offline push settings of the conversation. * * @throws A description of the exception. See {@link ChatError}. */ fetchSilentModeForConversation(params: { convId: string; convType: ChatConversationType; }): Promise; /** * Sets the offline push of the app. * * @param option The offline push parameters. * * @throws A description of the exception. See {@link ChatError}. */ setSilentModeForAll(option: ChatSilentModeParam): Promise; /** * Gets the do-not-disturb settings of the app. * * @returns The do-not-disturb settings of the app. * * @throws A description of the exception. See {@link ChatError}. */ fetchSilentModeForAll(): Promise; /** * Gets the do-not-disturb settings of the specified conversations. * * @param conversations The conversation list. * @returns The do-not-disturb settings of the specified conversations, which are key-value pairs where the key is the conversation ID and the value is the do-not-disturb settings. * * @throws A description of the exception. See {@link ChatError}. */ fetchSilentModeForConversations(conversations: ChatConversation[]): Promise>; /** * Sets the target translation language of offline push notifications. * * @param languageCode The language code. See {@link ChatTextMessageBody}. * * @throws A description of the exception. See {@link ChatError}. */ setPreferredNotificationLanguage(languageCode: string): Promise; /** * Gets the configured push translation language. * * @returns The language code. * * @throws A description of the exception. See {@link ChatError}. */ fetchPreferredNotificationLanguage(): Promise; }