import { Room, IEvent, MatrixEvent } from "matrix-js-sdk/src/matrix";
import Exporter from "./Exporter";
import { ExportType, IExportOptions } from "./exportUtils";
export default class JSONExporter extends Exporter {
    protected totalSize: number;
    protected messages: Record<string, any>[];
    constructor(room: Room, exportType: ExportType, exportOptions: IExportOptions, setProgressText: React.Dispatch<React.SetStateAction<string>>);
    get destinationFileName(): string;
    protected createJSONString(): string;
    protected getJSONString(mxEv: MatrixEvent): Promise<IEvent>;
    protected createOutput(events: MatrixEvent[]): Promise<string>;
    export(): Promise<void>;
}
