import { default as XYRTCClient } from '../../main/client'; import { IReturnResult, XYBaseModule, XYIMEventKey } from '../../type/index'; import { XYEmitter } from '@xylink/xy-toolkit'; export declare class XYIMClient extends XYEmitter implements XYBaseModule { private client; private logger; private iframe; private receiveFromChildHandler; private sendViewPortTimer; private sendViewPortInterval; constructor(client: XYRTCClient); /** * 连接SDK与IM iframe * * @param { string } imWidgetID - IM iframe * @returns { Promise } - 结果 */ connectIMWidget(imWidgetID: string): Promise; /** * 初始化 */ private init; /** * 关闭iframe */ destroy(): void; /** * 向 iframe 发送clientId等相关信息 * 1220迭代,网管开启强制校验,需向im发送此消息 * * @since 4.0.2 */ sendClientConfig(): void; /** * 向 iframe 发送入会名称 * */ sendUserInfo(): void; /** * 向 iframe 发送水印信息 */ sendWatermarkContent(): void; /** * 向 iframe 发送“是否在等候室”的消息 * * @param {boolean} isOnhold - 是否在等候室 */ sendIsHoldMessage(isOnhold: boolean): void; /** * 向 iframe 发送“是否主持”的消息 * * @param {boolean} isHost 是否主持 */ sendIsHostMessage(isHost: boolean): void; /** * 向 iframe 发送“聊天内容分享权限配置”的消息 * * @param {string} shareChatContentPermission - 聊天内容分享权限配置 */ sendShareChatContentPermission(shareChatContentPermission: string): void; /** * 处理IM iframe消息 * * @param event */ private handleIMMessage; /** * 清除定时器 */ private clearViewPortTimer; /** * 发送视口尺寸 */ private sendViewPortSize; /** * 获取IM地址 * * @returns { string } - 地址 */ getImUrl(): Promise; /** * 获取详细的im地址 * * @param { string } url server下发的地址 * @returns { string } - im地址 */ private getClientImUrl; }