import { Adminizer } from '../Adminizer'; import { AiAssistantMessage, AiAssistantModelInfo } from '../../interfaces/types'; import { UserAP } from '../../models/UserAP'; /** * Base class for AI assistant models. It is responsible for registering * access rights for the model and providing metadata for the front-end. */ export declare abstract class AbstractAiModelService { protected readonly adminizer: Adminizer; readonly id: string; readonly name: string; readonly description?: string; protected constructor(adminizer: Adminizer, metadata: AiAssistantModelInfo); protected registerAccessRight(): void; getMetadata(): AiAssistantModelInfo; abstract generateReply(prompt: string, history: AiAssistantMessage[], user: UserAP): Promise; }