UNPKG

matrix-react-sdk

Version:
31 lines (30 loc) 1.28 kB
import { MatrixClient, MatrixEvent, TypedEventEmitter } from "matrix-js-sdk/src/matrix"; import { VoiceBroadcastPlayback, VoiceBroadcastRecordingsStore } from ".."; import { IDestroyable } from "../../utils/IDestroyable"; export declare enum VoiceBroadcastPlaybacksStoreEvent { CurrentChanged = "current_changed" } interface EventMap { [VoiceBroadcastPlaybacksStoreEvent.CurrentChanged]: (recording: VoiceBroadcastPlayback | null) => void; } /** * This store manages VoiceBroadcastPlaybacks: * - access the currently playing voice broadcast * - ensures that only once broadcast is playing at a time */ export declare class VoiceBroadcastPlaybacksStore extends TypedEventEmitter<VoiceBroadcastPlaybacksStoreEvent, EventMap> implements IDestroyable { private recordings; private current; /** Playbacks indexed by their info event id. */ private playbacks; constructor(recordings: VoiceBroadcastRecordingsStore); setCurrent(current: VoiceBroadcastPlayback): void; clearCurrent(): void; getCurrent(): VoiceBroadcastPlayback | null; getByInfoEvent(infoEvent: MatrixEvent, client: MatrixClient): VoiceBroadcastPlayback; private addPlayback; private onPlaybackStateChanged; private pauseExcept; destroy(): void; } export {};