import { Transport, BreakoutParticipant, Participant, EventType } from '../@types/types'; import * as i0 from "@angular/core"; export interface TranslationConsumerSwitchParameters { consumerTransports: Transport[]; roomName: string; member: string; updateConsumerTransports: (transports: Transport[]) => void; breakOutRoomStarted?: boolean; breakOutRoomEnded?: boolean; breakoutRooms?: BreakoutParticipant[][]; limitedBreakRoom?: BreakoutParticipant[]; participants?: Participant[]; ref_participants?: Participant[]; islevel?: string; eventType?: EventType; hostNewRoom?: number; [key: string]: any; } export interface PauseOriginalProducerOptions { originalProducerId: string; speakerId?: string; parameters: TranslationConsumerSwitchParameters; } export interface ResumeOriginalProducerOptions { originalProducerId: string; speakerId?: string; parameters: TranslationConsumerSwitchParameters; } export interface StopConsumingTranslationOptions { speakerId?: string; language: string; translationProducerMap: Record>; parameters: TranslationConsumerSwitchParameters; } export declare class TranslationConsumerSwitch { isSpeakerInMyBreakoutRoom(speakerName: string, parameters: TranslationConsumerSwitchParameters): boolean; pauseOriginalProducer({ originalProducerId, speakerId, parameters, }: PauseOriginalProducerOptions): Promise; resumeOriginalProducer({ originalProducerId, speakerId, parameters, }: ResumeOriginalProducerOptions): Promise; isConsumingTranslationForSpeaker(speakerId: string, consumerTransports: Transport[], translationProducerMap: Map): { consuming: boolean; language?: string; translationProducerId?: string; originalProducerId?: string; }; getActiveTranslationConsumers(translationProducerMap: Map, consumerTransports: Transport[]): Array<{ speakerId: string; translationProducerId: string; originalProducerId: string; language: string; }>; findOriginalProducerForSpeaker(speakerId: string, allAudioStreams: Array<{ producerId: string; name?: string; [key: string]: any; }>): string | null; stopConsumingTranslation(options: StopConsumingTranslationOptions): Promise; syncTranslationStateAfterBreakoutChange(translationProducerMap: Record>, speakerIdByProducerId: Record, parameters: TranslationConsumerSwitchParameters): Promise; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }