declare const TIMPushManager: {
    EventName: {
        NOTIFICATION_CLICKED: string;
        MESSAGE_RECEIVED: string;
        MESSAGE_REVOKED: string;
    };
    /**
     * 注册推送服务
     * @param sdkAppID IM 控制台为您分配的 SDKAppID。
     * @param appKey IM 控制台为您分配的客户端密钥。
     * @returns 成功返回 {"errCode":0,"errMsg":"success","data":{"token":"xxx"}}，失败返回 { errCode: number, errMsg: string }。
     */
    registerPush(sdkAppID: number, appKey: string): Promise<JSON>;
    /**
     * 反注册推送服务
     * @returns 成功返回 {"errCode":0,"errMsg":"success"}，失败返回 { errCode: number, errMsg: string }。
     */
    unRegisterPush(): Promise<JSON>;
    /**
     * 设置注册推送服务使用的推送标识 ID，需要在注册推送服务前调用
     * @param registrationID 推送标识 ID，卸载重装会改变。
     * @returns 成功返回 {"errCode":0,"errMsg":"success"}，失败返回 { errCode: number, errMsg: string }。
     */
    setRegistrationID(registrationID: string): Promise<JSON>;
    /**
     * 注册推送服务成功后，获取推送标识 ID
     * @returns 成功返回 {"errCode":0,"errMsg":"success","data":{"registrationID":"xxx"}}，失败返回 { errCode: number, errMsg: string }。
     */
    getRegistrationID(): Promise<JSON>;
    /**
     * 订阅推送服务事件
     * @param eventName 事件类型，@see EventName。
     * @param listener 事件处理方法。
     */
    addPushListener(eventName: string, listener: (event: any) => void): void;
    /**
     * 取消订阅推送服务事件
     * @param eventName 事件类型，@see EventName。
     * @param listener 事件处理方法。
     */
    removePushListener(eventName: string, listener: (event: any) => void): void;
    /**
     * 应用在前台时，开/关通知栏通知（默认开）
     * @param disable true: 应用在前台时，关闭通知栏通知； false: 应用在前台时，开启通知栏通知。
     */
    disablePostNotificationInForeground(disable: boolean): void;
    /**
     * 创建客户端通知 channel
     * @param options 参数说明：
     *   options.channelID: 必填，自定义 channel 的 ID
     *   options.channelName: 必填，自定义 channel 的名称
     *   options.channelDesc: 选填，自定义 channel 的描述
     *   options.channelSound: 选填，自定义 channel 的铃音，音频文件名不带后缀，音频文件需要放到 xxx/nativeResources/res/raw 中。例如：options.channelSound = private_ring，即设置 xxx/nativeResources/res/raw/private_ring.mp3 为自定义铃音
     * @returns 成功返回 {"errCode":0,"errMsg":"success"}，失败返回 { errCode: number, errMsg: string }。
     */
    createNotificationChannel(options: {
        channelID: string;
        channelName: string;
        channelDesc?: string;
        channelSound?: string;
    }): Promise<JSON>;
};

export { TIMPushManager as default };
