import { FilenameFactory } from "./filename/FilenameFactory";
import { Config } from "../../configuration/Config";
import { IvrTesterPlugin } from "../../plugins/IvrTesterPlugin";
import { TestSession } from "../../testRunner";
export interface RecorderConfig {
    outputPath: string;
    filename?: string | FilenameFactory;
    includeResponse: boolean;
}
export declare const transcriptRecorderPlugin: (config: Config) => IvrTesterPlugin;
export declare class TranscriptRecorder {
    private readonly testSession;
    private readonly config;
    private static readonly FILE_EXT;
    private static readonly FILENAME_SUFFIX;
    private readonly processTwilioMessageRef;
    private readonly saveMatchedPromptRef;
    private readonly saveTimedOutPromptThenCloseRef;
    private readonly closeRef;
    private writeStream;
    constructor(testSession: TestSession, config: RecorderConfig);
    private processTwilioMessage;
    private saveTimedOutPromptThenClose;
    private saveMatchedPrompts;
    private createFilename;
    private createFile;
    private close;
}
