import { IAgoraRTCClient, ILocalAudioTrack, ILocalVideoTrack } from 'agora-rtc-sdk-ng'; import { AgoraRtcSourceManager } from '../../../core/rtc/source-manager'; import { AgoraRtcAudioSourceType, AgoraRtcChannelClientObserver, AgoraRtcConnection, AgoraRtcStreamLayer, AgoraRtcVideoEncoderConfiguration, AgoraRtcVideoSourceType, AgoraRtcScreenScenarioType, AgoraRtcChannelPublisherObserver, AgoraRtcMediaSourceState, AgoraRtcPublishVideoMappingItem, AgoraRtcPublishAudioMappingItem, AgoraRtcLatencyLevelType } from '../../../core/rtc/type'; import { AgoraWebRtcStreamPublishPoolImpl } from './publish-pool'; import { AgoraWebRtcChannelClientInitConfig } from './type'; import { AgoraRtcDeviceManager } from './device'; import { AgoraObservable } from '../../../imports'; import { AgoraRtcErrorCode } from '../../../constant'; import type { AgoraRtcChannelPublisher } from '../../../core/rtc/publisher'; export declare class AgoraRtcChannelPublisherImpl implements AgoraRtcChannelPublisher { private _rtcClient; private _initConfig; private _deviceManager; private _channelObservable; protected observable: AgoraObservable; protected videoEncoderConfigs: Map; protected screenScenario: AgoraRtcScreenScenarioType; protected latencyLevel: AgoraRtcLatencyLevelType; protected streamLayerBitMaskMap: Map; protected sourceManager: AgoraRtcSourceManager; private _mainPublishManager; private _publishManagerBinderMap; protected _publishVideoMapping: Map; protected _publishAudioMapping: Map; private _defaultCameraHighVideoEncoderConfig; private _defaultCameraLowVideoEncoderConfig; private _defaultScreenVideoEncoderConfig; private _localTrackObserver; private _defaultCameraStreamConfig; private _defaultScreenStreamConfig; private _videoStreamConfigs; publishPool: AgoraWebRtcStreamPublishPoolImpl; private _sourceManagerObserver; private _publishPoolObserver; constructor(mainConnection: AgoraRtcConnection, sourceManager: AgoraRtcSourceManager, _rtcClient: IAgoraRTCClient, _initConfig: AgoraWebRtcChannelClientInitConfig, _deviceManager: AgoraRtcDeviceManager, _channelObservable: AgoraObservable); onLocalVideoTrackCreated(sourceId: string, sourceType: AgoraRtcVideoSourceType, localTrack: ILocalVideoTrack): void; onLocalVideoTrackBeforeDestroy(sourceId: string, sourceType: AgoraRtcVideoSourceType, localTrack: ILocalVideoTrack): void; onLocalAudioTrackCreated(sourceId: string, sourceType: AgoraRtcAudioSourceType, localTrack: ILocalAudioTrack): void; onLocalAudioTrackBeforeDestroy(sourceId: string, sourceType: AgoraRtcAudioSourceType, localTrack: ILocalAudioTrack): void; onVideoDeviceStateFlagUpdated(deviceId: string, flag: number): void; onAudioDeviceStateFlagUpdated(deviceId: string, flag: number): void; publishLocalVideoStream(token: string | undefined, streamId: string, sourceId: string, type: AgoraRtcVideoSourceType, streamLayerBitMask: number): number; unpublishLocalVideoStream(streamId: string, type: AgoraRtcVideoSourceType): number; adjustVideoProfileByStreamLayer(streamId: string): void; publishLocalAudioStream(token: string | undefined, streamId: string, sourceId: string, type: AgoraRtcAudioSourceType): number; unpublishLocalAudioStream(streamId: string, type: AgoraRtcAudioSourceType): number; release(): void; protected _getCameraState(sourceId: string): AgoraRtcMediaSourceState; protected _getScreenCaptureState(sourceId: string): AgoraRtcMediaSourceState; protected _getMicrophoneState(sourceId: string): AgoraRtcMediaSourceState; protected _getLoopbackState(sourceId: string): AgoraRtcMediaSourceState; setScreenScenario(type: AgoraRtcScreenScenarioType): AgoraRtcErrorCode; setDualStreamMode(streamId: string, enable: boolean): number; setVideoEncoderConfig(config: AgoraRtcVideoEncoderConfiguration, streamLayer: AgoraRtcStreamLayer, streamId: string): number; getVideoEncoderConfig(streamLayer: AgoraRtcStreamLayer, streamId: string): AgoraRtcVideoEncoderConfiguration; protected _internalSetVideoEncoderConfig(config: AgoraRtcVideoEncoderConfiguration, streamLayer: AgoraRtcStreamLayer, streamId: string): number; addObserver(observer: AgoraRtcChannelPublisherObserver): void; removeObserver(observer: AgoraRtcChannelPublisherObserver): void; /** * pause all local streams. */ pause(): void; /** * resume all local streams. */ resume(): void; private _getVideoStreamConfig; private _handleAudioPublish; private _handleVideoPublish; }