export interface TemplateMetadata { description?: string; author?: string; version?: string; lastModified?: string; } export interface LoadedTemplate { content: string; metadata: TemplateMetadata; filePath: string; } export interface TemplateInfo { operation: string; language: string; filePath: string; } export declare class TemplateLoader { private readonly templateDir; private templateCache; constructor(templateDir?: string); /** * Load a template by operation and language */ loadTemplate(operation: string, language: string): Promise; /** * Load template with metadata */ loadTemplateWithMetadata(operation: string, language: string): Promise; /** * Substitute variables in template */ substituteVariables(template: string, variables: Record): string; /** * List all available templates */ listAvailableTemplates(): Promise; /** * Parse metadata from template header comments */ private parseMetadata; /** * Generate cache key for operation/language */ private getCacheKey; /** * Clear template cache */ clearCache(): void; /** * Clear specific template from cache */ clearCacheForTemplate(operation: string, language: string): void; } //# sourceMappingURL=template-loader.d.ts.map