/**
 * Domain Knowledge Templates for Knowledge Generation Framework
 * Provides structured architectural knowledge for different domains
 */
import { DomainTemplate, ArchitecturalDomain, KnowledgeCategory } from '../types/knowledge-generation.js';
export declare const webApplicationsTemplate: DomainTemplate;
export declare const microservicesTemplate: DomainTemplate;
export declare const databaseDesignTemplate: DomainTemplate;
export declare const apiDesignTemplate: DomainTemplate;
export declare const cloudInfrastructureTemplate: DomainTemplate;
export declare const domainTemplateRegistry: Map<ArchitecturalDomain, DomainTemplate>;
/**
 * Get domain template by domain name
 */
export declare function getDomainTemplate(domain: ArchitecturalDomain): DomainTemplate | undefined;
/**
 * Get all available domain templates
 */
export declare function getAllDomainTemplates(): DomainTemplate[];
/**
 * Get templates for multiple domains
 */
export declare function getDomainTemplates(domains: ArchitecturalDomain[]): DomainTemplate[];
/**
 * Get knowledge categories for a specific domain
 */
export declare function getDomainCategories(domain: ArchitecturalDomain): KnowledgeCategory[];
/**
 * Check if a domain template exists
 */
export declare function hasDomainTemplate(domain: ArchitecturalDomain): boolean;
/**
 * Get template metadata for a domain
 */
export declare function getDomainTemplateMetadata(domain: ArchitecturalDomain): import("../types/knowledge-generation.js").TemplateMetadata | undefined;
//# sourceMappingURL=domain-knowledge-templates.d.ts.map