import * as zego from '../ZegoExpressDefines' import { ZegoEventListener, ZegoMediaPlayerListener, ZegoAudioEffectPlayerListener, ZegoRealTimeSequentialDataEventHandler, ZegoCopyrightedMusicListener, } from '../ZegoExpressEventHandler' type ZegoAnyCallback = (...args: any[]) => any export declare class ZegoExpressEngineImpl { static _listeners: Map> static _mediaPlayerMap: Map static _audioEffectPlayerMap: Map static _realTimeSequentialDataManagerMap: Map _copyrightedMusic: zego.ZegoCopyrightedMusic | null static getInstance(): ZegoExpressEngineImpl static createEngine( appID: number, appSign: string, isTestEnv: boolean, scenario: zego.ZegoScenario ): Promise static createEngineWithProfile(profile: zego.ZegoEngineProfile): Promise static destroyEngine(): Promise static setEngineConfig(config: zego.ZegoEngineConfig): Promise static setRoomMode(mode: zego.ZegoRoomMode): Promise static getVersion(): Promise getVersion(): Promise uploadLog(): Promise callExperimentalAPI(params: string): Promise on( event: EventType, callback: ZegoEventListener[EventType] ): void off( event: EventType, callback?: ZegoEventListener[EventType] ): void loginRoom( roomID: string, user: zego.ZegoUser, config?: zego.ZegoRoomConfig ): Promise logoutRoom(roomID?: string): Promise switchRoom(fromRoomID: string, toRoomID: string, config?: zego.ZegoRoomConfig): Promise renewToken(roomID: string, token: string): Promise setRoomExtraInfo( roomID: string, key: string, value: string ): Promise setStreamExtraInfo( extraInfo: string, channel?: zego.ZegoPublishChannel ): Promise sendBroadcastMessage( roomID: string, message: string ): Promise sendBarrageMessage(roomID: string, message: string): Promise sendCustomCommand( roomID: string, command: string, toUserList?: zego.ZegoUser[] ): Promise startPublishingStream( streamID: string, channel?: zego.ZegoPublishChannel, config?: zego.ZegoPublisherConfig ): Promise stopPublishingStream(channel?: zego.ZegoPublishChannel): Promise startPreview(view?: zego.ZegoView, channel?: zego.ZegoPublishChannel): Promise stopPreview(channel?: zego.ZegoPublishChannel): Promise setVideoConfig(config: zego.ZegoVideoConfig, channel?: zego.ZegoPublishChannel): Promise getVideoConfig(channel?: zego.ZegoPublishChannel): Promise setVideoMirrorMode( mode: zego.ZegoVideoMirrorMode, channel?: zego.ZegoPublishChannel ): Promise setAppOrientation(mode: zego.ZegoOrientation, channel?: zego.ZegoPublishChannel): Promise setAudioConfig(config: zego.ZegoAudioConfig, channel?: zego.ZegoPublishChannel): Promise getAudioConfig(channel?: zego.ZegoPublishChannel): Promise mutePublishStreamAudio(mute: boolean, channel?: zego.ZegoPublishChannel): Promise mutePublishStreamVideo(mute: boolean, channel?: zego.ZegoPublishChannel): Promise setCaptureVolume(volume: number): Promise addPublishCdnUrl( streamID: string, targetURL: string ): Promise removePublishCdnUrl( streamID: string, targetURL: string ): Promise enablePublishDirectToCDN( enable: boolean, config?: zego.ZegoCDNConfig, channel?: zego.ZegoPublishChannel ): Promise sendSEI(data: Uint8Array, channel?: zego.ZegoPublishChannel): Promise enableHardwareEncoder(enable: boolean): Promise enableH265EncodeFallback(enable: boolean): Promise isVideoEncoderSupported(codecID: zego.ZegoVideoCodecID): Promise startPlayingStream( streamID: string, view?: zego.ZegoView, config?: zego.ZegoPlayerConfig ): Promise stopPlayingStream(streamID: string): Promise setPlayVolume(streamID: string, volume: number): Promise setAllPlayStreamVolume(volume: number): Promise setPlayStreamVideoType(streamID: string, streamType: zego.ZegoVideoStreamType): Promise takePublishStreamSnapshot( channel?: zego.ZegoPublishChannel ): Promise takePlayStreamSnapshot(streamID: string): Promise mutePlayStreamAudio(streamID: string, mute: boolean): Promise mutePlayStreamVideo(streamID: string, mute: boolean): Promise muteAllPlayStreamAudio(mute: boolean): Promise muteAllPlayStreamVideo(mute: boolean): Promise enableHardwareDecoder(enable: boolean): Promise isVideoDecoderSupported(codecID: zego.ZegoVideoCodecID): Promise muteMicrophone(mute: boolean): Promise isMicrophoneMuted(): Promise muteSpeaker(mute: boolean): Promise isSpeakerMuted(): Promise enableAudioCaptureDevice(enable: boolean): Promise getAudioRouteType(): Promise setAudioRouteToSpeaker(defaultToSpeaker: boolean): Promise enableCamera(enable: boolean, channel?: zego.ZegoPublishChannel): Promise useFrontCamera(enable: boolean, channel?: zego.ZegoPublishChannel): Promise startSoundLevelMonitor(config?: zego.ZegoSoundLevelConfig): Promise stopSoundLevelMonitor(): Promise enableHeadphoneMonitor(enable: boolean): Promise enableAEC(enable: boolean): Promise enableHeadphoneAEC(enable: boolean): Promise setAECMode(mode: zego.ZegoAECMode): Promise enableAGC(enable: boolean): Promise enableANS(enable: boolean): Promise setANSMode(mode: zego.ZegoANSMode): Promise enableBeautify(feature: number, channel?: zego.ZegoPublishChannel): Promise setBeautifyOption( option: zego.ZegoBeautifyOption, channel?: zego.ZegoPublishChannel ): Promise startNetworkSpeedTest(config: zego.ZegoNetworkSpeedTestConfig, interval?: number): Promise stopNetworkSpeedTest(): Promise getNetworkTimeInfo(): Promise enableCustomAudioIO( enable: boolean, config: zego.ZegoCustomAudioConfig, channel?: zego.ZegoPublishChannel ): Promise enableCustomVideoCapture( enable: boolean, config?: zego.ZegoCustomVideoCaptureConfig, channel?: zego.ZegoPublishChannel ): Promise enableCustomVideoProcessing( enable: boolean, config?: zego.ZegoCustomVideoProcessConfig, channel?: zego.ZegoPublishChannel ): Promise setVideoSource( source: zego.ZegoVideoSourceType, channel?: zego.ZegoPublishChannel ): Promise setAudioSource( source: zego.ZegoAudioSourceType, channel?: zego.ZegoPublishChannel ): Promise enableVideoObjectSegmentation( enable: boolean, config: zego.ZegoObjectSegmentationConfig, channel?: zego.ZegoPublishChannel ): Promise enableAlphaChannelVideoEncoder( enable: boolean, alphaLayout: zego.ZegoAlphaLayoutType, channel?: zego.ZegoPublishChannel ): Promise startScreenCaptureInApp(config?: zego.ZegoScreenCaptureConfig): Promise startScreenCapture(config?: zego.ZegoScreenCaptureConfig): Promise stopScreenCapture(): Promise updateScreenCaptureConfig(config: zego.ZegoScreenCaptureConfig): Promise createMediaPlayer(): Promise destroyMediaPlayer(mediaPlayer: zego.ZegoMediaPlayer): Promise createAudioEffectPlayer(): Promise destroyAudioEffectPlayer(audioEffectPlayer: zego.ZegoAudioEffectPlayer): Promise createRealTimeSequentialDataManager( roomID: string ): Promise destroyRealTimeSequentialDataManager( manager: zego.ZegoRealTimeSequentialDataManager ): Promise createCopyrightedMusic(): Promise destroyCopyrightedMusic(copyrightedMusic: zego.ZegoCopyrightedMusic): Promise startRecordingCapturedData( config: zego.ZegoDataRecordConfig, channel?: zego.ZegoPublishChannel ): Promise stopRecordingCapturedData(channel?: zego.ZegoPublishChannel): Promise startMixerTask(task: zego.ZegoMixerTask): Promise stopMixerTask(task: zego.ZegoMixerTask): Promise startEffectsEnv(): Promise stopEffectsEnv(): Promise enableEffectsBeauty(enable: boolean): Promise setEffectsBeautyParam(param: zego.ZegoEffectsBeautyParam): Promise setVoiceChangerPreset(preset: zego.ZegoVoiceChangerPreset): Promise setVoiceChangerParam(param: zego.ZegoVoiceChangerParam): Promise setAudioEqualizerGain(bandIndex: number, bandGain: number): Promise setReverbPreset(preset: zego.ZegoReverbPreset): Promise setReverbAdvancedParam(param: zego.ZegoReverbAdvancedParam): Promise setReverbEchoParam(param: zego.ZegoReverbEchoParam): Promise setElectronicEffects( enable: boolean, mode: zego.ZegoElectronicEffectsMode, tonal: number ): Promise setStreamAlignmentProperty(alignment: number, channel: zego.ZegoPublishChannel): Promise setAudioCaptureStereoMode(mode: zego.ZegoAudioCaptureStereoMode): Promise setPlayStreamBufferIntervalRange( streamID: string, minBufferInterval: number, maxBufferInterval: number ): Promise setPlayStreamsAlignmentProperty(mode: zego.ZegoStreamAlignmentMode): Promise setAudioDeviceMode(deviceMode: zego.ZegoAudioDeviceMode): Promise enableVirtualStereo(enable: boolean, angle: number): Promise enableCustomAudioCaptureProcessing( enable: boolean, config: zego.ZegoCustomAudioProcessConfig ): Promise enableAlignedAudioAuxData(enable: boolean, param: zego.ZegoAudioFrameParam): Promise enableBeforeAudioPrepAudioData(enable: boolean, param: zego.ZegoAudioFrameParam): Promise enableCustomAudioPlaybackProcessing( enable: boolean, config: zego.ZegoCustomAudioProcessConfig ): Promise enableCustomAudioRemoteProcessing( enable: boolean, config: zego.ZegoCustomAudioProcessConfig ): Promise enableCustomAudioCaptureProcessingAfterHeadphoneMonitor( enable: boolean, config: zego.ZegoCustomAudioProcessConfig ): Promise } export declare class ZegoMediaPlayerImpl extends zego.ZegoMediaPlayer { private _index constructor(index: number) on( event: MediaPlayerEventType, callback: ZegoMediaPlayerListener[MediaPlayerEventType] ): void off( event: MediaPlayerEventType, callback?: ZegoMediaPlayerListener[MediaPlayerEventType] ): void loadResource(path: string): Promise loadResourceWithConfig( resource: zego.ZegoMediaPlayerResource ): Promise start(): Promise stop(): Promise pause(): Promise resume(): Promise setPlayerView(view: zego.ZegoView): Promise seekTo(millisecond: number): Promise setPlaySpeed(speed: number): Promise enableRepeat(enable: boolean): Promise enableAux(enable: boolean): Promise muteLocal(mute: boolean): Promise setVolume(volume: number): Promise setPlayVolume(volume: number): Promise setPublishVolume(volume: number): Promise setProgressInterval(millisecond: number): Promise getPlayVolume(): Promise getPublishVolume(): Promise getTotalDuration(): Promise getCurrentProgress(): Promise getAudioTrackCount(): Promise setAudioTrackIndex(index: number): Promise getCurrentState(): Promise getCurrentRenderingProgress(): Promise getIndex(): number setAudioTrackMode(mode: zego.ZegoMediaPlayerAudioTrackMode): Promise setAudioTrackPublishIndex(index: number): Promise enableVoiceChanger( audioChannel: zego.ZegoMediaPlayerAudioChannel, enable: boolean, param: zego.ZegoVoiceChangerParam ): Promise takeSnapshot(): Promise setNetWorkResourceMaxCache(time: number, size: number): Promise getNetWorkResourceCache(): Promise setNetWorkBufferThreshold(threshold: number): Promise enableSoundLevelMonitor(enable: boolean, millisecond: number): Promise enableFrequencySpectrumMonitor(enable: boolean, millisecond: number): Promise setActiveAudioChannel(channel: zego.ZegoMediaPlayerAudioChannel): Promise getMediaInfo(): Promise updatePosition(position: number[]): Promise setHttpHeader(headers: Record): Promise setPlayMediaStreamType(streamType: zego.ZegoMediaStreamType): Promise clearView(): Promise enableLiveAudioEffect(enable: boolean, mode: zego.ZegoLiveAudioEffectMode): Promise enableLocalCache(enable: boolean, cacheDir: string): Promise getPlaybackStatistics(): Promise enableViewMirror(enable: boolean): Promise } export declare class ZegoAudioEffectPlayerImpl extends zego.ZegoAudioEffectPlayer { private _index constructor(index: number) on( event: AudioEffectPlayerEventType, callback: ZegoAudioEffectPlayerListener[AudioEffectPlayerEventType] ): void off( event: AudioEffectPlayerEventType, callback?: ZegoAudioEffectPlayerListener[AudioEffectPlayerEventType] ): void start(audioEffectID: number, path: string, config: zego.ZegoAudioEffectPlayConfig): Promise stop(audioEffectID: number): Promise pause(audioEffectID: number): Promise resume(audioEffectID: number): Promise stopAll(): Promise pauseAll(): Promise resumeAll(): Promise seekTo( audioEffectID: number, millisecond: number ): Promise setVolume(audioEffectID: number, volume: number): Promise setVolumeAll(volume: number): Promise getTotalDuration(audioEffectID: number): Promise getCurrentProgress(audioEffectID: number): Promise loadResource( audioEffectID: number, path: string ): Promise unloadResource(audioEffectID: number): Promise getIndex(): number } export declare class ZegoRealTimeSequentialDataManagerImpl extends zego.ZegoRealTimeSequentialDataManager { private _index constructor(index: number) on( event: RealTimeSequentialDataEventType, callback: ZegoRealTimeSequentialDataEventHandler[RealTimeSequentialDataEventType] ): void off( event: RealTimeSequentialDataEventType, callback?: ZegoRealTimeSequentialDataEventHandler[RealTimeSequentialDataEventType] ): void startBroadcasting(streamID: string): Promise stopBroadcasting(streamID: string): Promise startSubscribing(streamID: string): Promise stopSubscribing(streamID: string): Promise sendRealTimeSequentialData( data: Uint8Array, streamID: string ): Promise getIndex(): number } export declare class ZegoCopyrightedMusicImpl extends zego.ZegoCopyrightedMusic { private _eventListeners constructor() on( event: CopyrightedMusicEventType, callback: ZegoCopyrightedMusicListener[CopyrightedMusicEventType] ): void off( event: CopyrightedMusicEventType, callback?: ZegoCopyrightedMusicListener[CopyrightedMusicEventType] ): void initCopyrightedMusic( config: zego.ZegoCopyrightedMusicConfig ): Promise getCacheSize(): Promise clearCache(): Promise sendExtendedRequest( command: string, params: string ): Promise getLrcLyric( config: zego.ZegoCopyrightedMusicGetLyricConfig ): Promise getKrcLyricByToken(krcToken: string): Promise requestResource( config: zego.ZegoCopyrightedMusicRequestConfigV2 ): Promise getSharedResource( config: zego.ZegoCopyrightedMusicGetSharedConfigV2 ): Promise download(resourceID: string): Promise cancelDownload(resourceID: string): Promise queryCache(config: zego.ZegoCopyrightedMusicQueryCacheConfigV2): Promise getDuration(resourceID: string): Promise setScoringLevel(level: number): Promise startScore(resourceID: string, pitchValueInterval: number): Promise pauseScore(resourceID: string): Promise resumeScore(resourceID: string): Promise stopScore(resourceID: string): Promise resetScore(resourceID: string): Promise getPreviousScore(resourceID: string): Promise getAverageScore(resourceID: string): Promise getTotalScore(resourceID: string): Promise getFullScore(resourceID: string): Promise getStandardPitch(resourceID: string): Promise getCurrentPitch(resourceID: string): Promise } export {}