export type TemplateSourceType = 'explicit' | 'convention' | 'builtin'; export interface TemplateSource { type: TemplateSourceType; path: string; content: string; } export type TemplateLoadErrorCode = 'TEMPLATE_NOT_FOUND' | 'TEMPLATE_READ_ERROR'; export declare class TemplateLoadError extends Error { readonly code: TemplateLoadErrorCode; readonly cause?: unknown | undefined; constructor(message: string, code: TemplateLoadErrorCode, cause?: unknown | undefined); } export type LoadTemplateResult = { success: true; source: TemplateSource; } | { success: false; error: TemplateLoadError; }; /** * Load a template by type, checking in order: * 1. Explicit path from templates config * 2. Convention path: ./templates/{type}.ts.hbs * 3. Built-in templates from package */ export declare function loadTemplate(ruleType: string, templatesConfig: Record | undefined, configDir: string): Promise; //# sourceMappingURL=template-loader.d.ts.map