import { MTableQueries } from "../../common-types/common"; import { CoreAiCapability, CoreAiEmbeddingChunk, CoreAiFeedbackLog, CoreAiKnowledgeSource, CoreAiPromptTemplate, CoreAiRequestAuditLog, CoreAiRoleCapabilityMapping } from "../../schema"; import { controllerResponse } from "../../utilities"; export type AiChatMessage = { role: "user" | "assistant"; content: string; }; declare class MAiChatPayload extends MTableQueries { query: string; capability_code: string; page_code?: string; module?: string; record_id?: string; context?: Record; /** Conversation history for multi-turn chat. Each turn: { role: "user"|"assistant", content: string }. */ messages?: AiChatMessage[]; constructor(init: MAiChatPayload); Validate?(): Partial>; } declare class MAiFeedbackPayload { request_id?: string; rating?: "UP" | "DOWN"; feedback_text?: string; constructor(init: MAiFeedbackPayload); Validate?(): Partial>; } declare class MAiPromptTemplatePayload { ai_prompt_template?: CoreAiPromptTemplate; constructor(init: MAiPromptTemplatePayload); Validate?(): Partial>; } declare class MAiKnowledgeSyncPayload { ai_knowledge_source?: CoreAiKnowledgeSource; chunks?: CoreAiEmbeddingChunk[]; constructor(init: MAiKnowledgeSyncPayload); Validate?(): Partial>; } interface aiCapabilityControllerResponse extends controllerResponse { data?: CoreAiCapability[]; } interface aiPromptTemplateControllerResponse extends controllerResponse { data?: CoreAiPromptTemplate[] | CoreAiPromptTemplate; } interface aiAuditControllerResponse extends controllerResponse { data?: CoreAiRequestAuditLog[] | CoreAiRequestAuditLog; } interface aiFeedbackControllerResponse extends controllerResponse { data?: CoreAiFeedbackLog; } interface aiRoleCapabilityControllerResponse extends controllerResponse { data?: CoreAiRoleCapabilityMapping[]; } interface aiChatControllerResponse extends controllerResponse { data?: { request_id: string; message: string; citations?: Array<{ source_id: string; source_title: string; chunk_id: string; }>; provider: string; model: string; latency_ms: number; policy: { decision: "ALLOW" | "DENY"; reason: string; capability_code: string; }; }; } export { MAiChatPayload, MAiFeedbackPayload, MAiPromptTemplatePayload, MAiKnowledgeSyncPayload, aiCapabilityControllerResponse, aiPromptTemplateControllerResponse, aiAuditControllerResponse, aiFeedbackControllerResponse, aiRoleCapabilityControllerResponse, aiChatControllerResponse };