import { DyFM_AI_Message } from '@futdevpro/fsm-dynamo/ai'; import { DyFM_Msg_Provider_Type } from '@futdevpro/fsm-dynamo/messaging'; import { DyNTS_Bot_Main_ControlService } from '../../bot/_services/bot-main.control-service'; import { DyNTS_Bot_MessageWrapper } from '../../bot/_models/bot-message-wrapper.interface'; import { DyNTS_AI_LLMChat_ServiceBase } from '../../ai/_services/ai-llm-chat.service-base'; import { DyNTS_Ass_IO_ControlService } from './ass-io.control-service'; import { DyNTS_Bot_ChannelWrapper } from '../../bot/_models/bot-channel-wrapper.interface'; /** * Assistant Service Base * Integrates commsProvider (bot) and aiProvider (LLMChat) to create AI-powered assistant * USES EXISTING AI ABSTRACTIONS - no duplication */ export declare abstract class DyNTS_Ass_Main_ControlService extends DyNTS_Bot_Main_ControlService { aiProvider: DyNTS_AI_LLMChat_ServiceBase; protected abstract getAIProvider(): DyNTS_AI_LLMChat_ServiceBase; botIO_CS: DyNTS_Ass_IO_ControlService; protected abstract getBotIOControlService(): DyNTS_Ass_IO_ControlService; defaultSystemPrompt: string; protected constructor(); /** * Gather messages from comms platform (any platform) * Same as dias.service-base but platform-agnostic * Now uses wrapper's provider to ensure messages from correct platform */ gatherMessagesForMessage(message: DyNTS_Bot_MessageWrapper, limit?: number): Promise[]>; gatherMessagesInChannel(channel: DyNTS_Bot_ChannelWrapper, issuer: string): Promise[]>; /** * Convert gathered messages to AI conversation using EXISTING DyFM_AI_Message */ gatherMessagesAsAIConversation(message: DyNTS_Bot_MessageWrapper, issuer: string): Promise; gatherMessagesAsAIConversationInChannel(channel: DyNTS_Bot_ChannelWrapper, issuer: string): Promise; } //# sourceMappingURL=ass-main.control-service.d.ts.map