export interface TemplateMetadata { name: string; version: string; description: string; lastUpdated: string; minCodeCrewVersion?: string; maxCodeCrewVersion?: string; } export interface TemplateVersions { latest: string; versions: { [version: string]: { released: string; templates: string[]; description?: string; minCodeCrewVersion?: string; maxCodeCrewVersion?: string; }; }; } export declare class TemplateService { private readonly logger; private readonly cdnBaseUrl; private readonly githubRawUrl; private readonly cacheDir; constructor(); private isVersionCompatible; private compareVersions; downloadTemplate(templateName: string, version?: string): Promise; listAvailableTemplates(version?: string): Promise; getVersions(): Promise; checkAvailability(): Promise; private cacheTemplate; private loadFromCache; clearCache(): void; }