/** * Domain Keyword Registry * * Configurable registry for domain-specific keywords used in task classification. * Follows Open/Closed Principle - open for extension, closed for modification. */ import type { TaskDomain } from '../types/agent.types.js'; /** * Registry for domain keywords * Allows runtime extension of keyword definitions */ export declare class DomainKeywordRegistry { private keywords; constructor(); /** * Initialize with default keywords */ private initializeDefaults; /** * Get all keywords for a specific domain */ getKeywords(domain: TaskDomain): string[]; /** * Get all domains and their keywords */ getAllKeywords(): Record; /** * Get all registered domains */ getDomains(): TaskDomain[]; /** * Register additional keywords for a domain * Adds to existing keywords without removing any */ registerKeywords(domain: TaskDomain, newKeywords: string[]): void; /** * Replace all keywords for a domain */ setKeywords(domain: TaskDomain, keywords: string[]): void; /** * Check if a keyword belongs to any domain */ findDomainsForKeyword(keyword: string): TaskDomain[]; /** * Reset to default keywords */ reset(): void; } /** * Get the singleton domain keyword registry */ export declare function getDomainKeywordRegistry(): DomainKeywordRegistry; /** * Reset the singleton instance (for testing) */ export declare function resetDomainKeywordRegistry(): void; //# sourceMappingURL=domain-keyword-registry.d.ts.map