@twilio/flex-ui
Version:
Twilio Flex UI
41 lines (40 loc) • 1.68 kB
TypeScript
import { ITask } from "../../models/CommonModels";
import { ParticipantBase, VoiceProperties } from "../Participants/participants.types";
import { Channel, DataSource, OutboundTransfer, baseConferenceListenerCallback } from "./Conferences.definitions";
export type ConferenceListenerCallback = baseConferenceListenerCallback<ConferenceListener>;
export declare function decodeSyncParticipant(task: ITask, participant: any): ParticipantBase<VoiceProperties>;
export declare class ConferenceListener {
private failedTransferRemoveTimer;
private map;
private onUpdatedCallback;
private onParticipantAdded;
private lifeCycle;
private stateUpdateTimers;
sid: string;
task: ITask;
channel?: Channel;
channelParticipants: Array<ParticipantBase<VoiceProperties>>;
outboundTransfer: OutboundTransfer | undefined;
private dataSource;
private static mapQuerySemaphore;
constructor(task: ITask, options?: {
onParticipantAdded?: ConferenceListenerCallback;
onUpdatedCallback?: ConferenceListenerCallback;
}, dataSource?: DataSource);
triggerDelayedStateUpdate(timeout: number): void;
stop(): void;
private initOutgoingTransferListeners;
private stopOutgoingTransferListeners;
initOutboundTransfer(outgoingTransferObject: any): void;
unInitOutboundTransfer(): void;
private updateOutboundTransfer;
private initialize;
private emitUpdateCallback;
private forceDetectParticipantsUpdates;
private channelParticipantAdded;
private channelParticipantModified;
private channelParticipantRemoved;
private itemAdded;
private itemUpdated;
private itemRemoved;
}