/** * Business Central Specialist Personas * * Defines the 14 BC specialist personas that guide knowledge discovery * and consultation in the Business Central Knowledge Base system. */ export interface BCSpecialist { /** Unique specialist identifier (matches domain folder name) */ id: string; /** Human-readable specialist name */ name: string; /** Role description */ role: string; /** Areas of expertise for this specialist */ expertise_areas: string[]; /** How this specialist approaches consultation */ consultation_style: string; /** Common questions developers ask this specialist */ typical_questions: string[]; /** AI prompting guidance for this specialist's perspective */ ai_prompting_style: string; /** Specialist's preferred communication tone */ communication_tone: 'analytical' | 'practical' | 'strategic' | 'cautious' | 'creative' | 'systematic'; } export interface SpecialistConsultation { topic: any; specialist: BCSpecialist; consultation_approach: string; related_topics: any[]; expertise_context: string; } export interface SpecialistResponse { specialist: BCSpecialist; question: string; relevant_knowledge: any[]; consultation_guidance: string; follow_up_suggestions: string[]; confidence_level: 'high' | 'medium' | 'low'; } /** * Complete BC Specialist Registry * Based on actual persona folders in knowledge base */ export declare const BC_SPECIALISTS: Record; /** * Persona Registry Implementation */ export declare class PersonaRegistry { private static instance; private specialists; private expertiseIndex; constructor(); static getInstance(): PersonaRegistry; /** * Get specialist by ID */ getSpecialist(specialistId: string): BCSpecialist | null; /** * Get all specialists */ getAllSpecialists(): BCSpecialist[]; /** * Find specialists by expertise area */ getSpecialistsByExpertise(expertiseArea: string): BCSpecialist[]; /** * Infer specialist from natural language question */ inferSpecialistFromQuestion(question: string): BCSpecialist | null; /** * Get specialists that could collaborate on a question */ getCollaboratingSpecialists(primarySpecialist: BCSpecialist, question: string): BCSpecialist[]; private buildExpertiseIndex; private matchesKeywords; } //# sourceMappingURL=persona-types.d.ts.map