import { PrismaService } from '@hed-hog/api-prisma';
import { McpRegistryService } from '../mcp/mcp-registry.service';
import { SettingService } from '../setting/setting.service';
import { CreateConversationDTO } from './dto/create-conversation.dto';
export declare class McpChatService {
    private readonly prisma;
    private readonly setting;
    private readonly registry;
    private readonly logger;
    constructor(prisma: PrismaService, setting: SettingService, registry: McpRegistryService);
    listConversations(userId: number): Promise<{
        id: number;
        title: string;
        created_at: Date;
        updated_at: Date;
    }[]>;
    createConversation(userId: number, dto: CreateConversationDTO): Promise<{
        id: number;
        title: string | null;
        user_id: number;
        created_at: Date;
        updated_at: Date;
    }>;
    deleteConversations(userId: number, ids: number[]): Promise<{
        count: number;
    }>;
    getMessages(conversationId: number, userId: number): Promise<{
        id: number;
        content: string;
        role: import("@prisma/client").$Enums.mcp_conversation_message_role_422a6ea954_enum;
        created_at: Date;
        updated_at: Date;
        conversation_id: number;
        tool_name: string | null;
        tool_call_id: string | null;
    }[]>;
    sendMessage(conversationId: number, userId: number, locale: string, message: string): Promise<{
        id: number;
        content: string;
        role: import("@prisma/client").$Enums.mcp_conversation_message_role_422a6ea954_enum;
        created_at: Date;
        updated_at: Date;
        conversation_id: number;
        tool_name: string | null;
        tool_call_id: string | null;
    }[]>;
    private runOpenAiLoop;
    private runGeminiLoop;
    private toOpenAiMessages;
    private toGeminiContents;
    private assertOwnership;
    private getProviderKey;
    private buildOpenAiTools;
    private buildGeminiTools;
    private selectOpenAiTools;
    private getAllowedMcpToolNames;
    private getDomainPriorityBucket;
    private getKeywordBoost;
    private buildToolRouterText;
    private normalizeText;
    private getToolDomain;
    private scoreToolDomains;
    private getCandidateDomains;
    private getToolSelectionClarification;
    private scoreToolMatch;
    private getSchemaText;
    private getFinanceSpecificBoost;
    private messageLooksLikeToolRequest;
    private isAmbiguousFinanceAccountsRequest;
    private hasTerm;
    private escapeRegex;
    private getDomainLabel;
    private isLikelyPortuguese;
    private formatDomainScores;
    private recordAssistantAndReturnHistory;
    private getMessageKeywordSet;
}
//# sourceMappingURL=mcp-chat.service.d.ts.map