import { ChatHistory } from './chat-history.model';
import { IFullUser } from '../users/users.interface';
import { ChatFilterService } from 'src/shared/chat-guards/chat-filter/chat-filter.service';
import { BlockedMessageService } from './services/blocked-message.service';
import { SubscriptionsService } from '../subscriptions/subscriptions.service';
import { SocketGuardsGateway } from 'src/shared/socket-guards/services/socket-guards.gateway';
import { LanguageService } from 'src/shared/language/language.service';
import { Model } from 'mongoose';
import { UpdateMessageDto } from './chat-history.validation';
import { IChat, IConversationDto } from './chat-history.interface';
import { FileHandlerStreamService } from './services/file-handler-stream.service';
import { Request } from 'express';
import { TextGeneratorStreamService } from './services/text-generator-stream.service';
import { FilterInstruction } from '../filter-instruction/filter-instruction.model';
import { AiModelsService } from '../app-config/ai-models/ai-models.service';
import { MemoryService } from '../users/services/memory.service';
import { AITextOrchestratorService } from 'src/shared/ai-orchestration/services/ai-text-orchestrator.service';
import { IChatResponseAdapter } from './interfaces/chat-response-adapter.interface';
import { StreamResponseHandlerService } from './services/stream-response-handler.service';
import { FunctionCallHandlerService } from './services/function-call-handler.service';
import { ChatContextService } from './services/chat-context.service';
import { PromptsService } from '../app-config/prompts/prompts.service';
import { ConfigService } from '../app-config/config/config.service';
export declare class ChatHistoryStreamService {
    private readonly chatHistoryModel;
    private readonly textGeneratorService;
    private readonly chatContextService;
    private readonly fileHandlerService;
    private readonly chatFilterService;
    private readonly blockedMessageService;
    private readonly subscriptionService;
    private readonly socketGateway;
    private readonly languageService;
    private readonly filterInstructionModel;
    private readonly aiModelsService;
    private readonly memoryService;
    private readonly textOrchestrator;
    private readonly streamResponseHandler;
    private readonly functionCallHandler;
    private readonly promptsService;
    private readonly configService;
    private readonly logger;
    constructor(chatHistoryModel: Model<ChatHistory>, textGeneratorService: TextGeneratorStreamService, chatContextService: ChatContextService, fileHandlerService: FileHandlerStreamService, chatFilterService: ChatFilterService, blockedMessageService: BlockedMessageService, subscriptionService: SubscriptionsService, socketGateway: SocketGuardsGateway, languageService: LanguageService, filterInstructionModel: Model<FilterInstruction>, aiModelsService: AiModelsService, memoryService: MemoryService, textOrchestrator: AITextOrchestratorService, streamResponseHandler: StreamResponseHandlerService, functionCallHandler: FunctionCallHandlerService, promptsService: PromptsService, configService: ConfigService);
    private _handleMemoryGeneration;
    regenarateChatbotResponse(regenerateConversationDto: IConversationDto, stream: any, user: IFullUser, req?: Request, skipReasonMessageId?: string, adapter?: IChatResponseAdapter): Promise<{
        data: IChat;
        function: 'file' | 'text' | 'image' | 'realTimeData' | 'error';
    }>;
    updateMessage(updateMessageDto: UpdateMessageDto, stream: any, user: IFullUser, req?: Request): Promise<{
        data: IChat;
        function: "file" | "text" | "image" | "realTimeData" | "error";
    }>;
    private generateTextResponseStream;
    private getStreamResponseObject;
    private handleChatStream;
}
