import { MatrixClient, Room, RoomMember, TypedEventEmitter } from "matrix-js-sdk/src/matrix";
import { IDestroyable } from "../../utils/IDestroyable";
import { VoiceBroadcastPlaybacksStore } from "../stores/VoiceBroadcastPlaybacksStore";
import { VoiceBroadcastRecordingsStore } from "../stores/VoiceBroadcastRecordingsStore";
type VoiceBroadcastPreRecordingEvent = "dismiss";
interface EventMap {
    dismiss: (voiceBroadcastPreRecording: VoiceBroadcastPreRecording) => void;
}
export declare class VoiceBroadcastPreRecording extends TypedEventEmitter<VoiceBroadcastPreRecordingEvent, EventMap> implements IDestroyable {
    room: Room;
    sender: RoomMember;
    private client;
    private playbacksStore;
    private recordingsStore;
    constructor(room: Room, sender: RoomMember, client: MatrixClient, playbacksStore: VoiceBroadcastPlaybacksStore, recordingsStore: VoiceBroadcastRecordingsStore);
    start: () => Promise<void>;
    cancel: () => void;
    destroy(): void;
}
export {};
