import { MetadataMode } from "../Node.js";
import { Response } from "../Response.js";
import type { ServiceContext } from "../ServiceContext.js";
import { PromptMixin } from "../prompts/Mixin.js";
import type { TextQaPrompt } from "./../Prompt.js";
import type { BaseSynthesizer, SynthesizeParamsNonStreaming, SynthesizeParamsStreaming } from "./types.js";
export declare class MultiModalResponseSynthesizer extends PromptMixin implements BaseSynthesizer {
    serviceContext?: ServiceContext;
    metadataMode: MetadataMode;
    textQATemplate: TextQaPrompt;
    constructor({ serviceContext, textQATemplate, metadataMode, }?: Partial<MultiModalResponseSynthesizer>);
    protected _getPrompts(): {
        textQATemplate: TextQaPrompt;
    };
    protected _updatePrompts(promptsDict: {
        textQATemplate: TextQaPrompt;
    }): void;
    synthesize(params: SynthesizeParamsStreaming): Promise<AsyncIterable<Response>>;
    synthesize(params: SynthesizeParamsNonStreaming): Promise<Response>;
}
