UNPKG

toto-agent

Version:

Chatbot agent and reusable components for Toto platform

94 lines (93 loc) 2.92 kB
export interface LanguageConfig { code: string; name: string; isDefault: boolean; keywords: { help: string[]; share: string[]; adopt: string[]; volunteer: string[]; thank: string[]; love: string[]; emergency: string[]; }; responses: { error: string; noResponse: string; donation: { complete: string; share: string; follow: string; }; sharing: { choosePlatform: string; customize: string; addStory: string; tagFriends: string; }; engagement: { shareWithFriends: string; makeDonation: string; followUpdates: string; exploreOther: string; }; }; } export interface PlatformConfig { name: string; version: string; description: string; mission: string; coreValues: string[]; features: string[]; userRoles: string[]; supportedRegions: string[]; primaryMarkets: string[]; } export interface TrainingDynamics { userAdaptation: { firstTimeUserGuidance: boolean; roleBasedResponses: boolean; engagementLevelAdjustment: boolean; locationAwareness: boolean; }; contentPersonalization: { animalTypePreferences: boolean; urgencyDetection: boolean; donationHistoryConsideration: boolean; shareHistoryConsideration: boolean; }; safetyChecks: { medicalAdviceDetection: boolean; promiseGuaranteeDetection: boolean; privacyRespect: boolean; transparencyRequirement: boolean; }; responseBehavior: { maxResponseLength: number; preferredTone: 'formal' | 'conversational' | 'warm' | 'professional'; emojiUsage: boolean; actionSuggestionLimit: number; }; } export declare class AgentTrainingConfig { private static instance; private platformConfig; private languageConfigs; private trainingDynamics; private constructor(); static getInstance(): AgentTrainingConfig; private initializeConfigurations; getPlatformConfig(): PlatformConfig; getLanguageConfig(languageCode: string): LanguageConfig | undefined; getAllLanguageConfigs(): LanguageConfig[]; getDefaultLanguage(): LanguageConfig; getTrainingDynamics(): TrainingDynamics; updatePlatformConfig(updates: Partial<PlatformConfig>): void; addLanguageSupport(languageConfig: LanguageConfig): void; updateTrainingDynamics(updates: Partial<TrainingDynamics>): void; detectLanguageFromKeywords(userMessage: string): string; getKeywordsForLanguage(languageCode: string, category: keyof LanguageConfig['keywords']): string[]; getResponseTemplate(languageCode: string, category: string, subCategory?: string): string; exportConfiguration(): object; }