export interface ThemeTemplate {
    name: string;
    path: string;
    content?: string;
}
export interface LoadedTheme {
    templates: Map<string, ThemeTemplate>;
    partials: Map<string, ThemeTemplate>;
    hasRequiredTemplates: boolean;
    themePath: string;
    packageJson?: Record<string, unknown>;
}
export declare class ThemeLoader {
    private themePath;
    private templates;
    private partials;
    constructor(themePath: string);
    load(): Promise<LoadedTheme>;
    private validateThemePath;
    private loadPackageJson;
    private loadTemplates;
    private loadPartials;
    private validateRequiredTemplates;
    getTemplate(name: string): Promise<string | null>;
    getPartial(name: string): Promise<string | null>;
    getTemplatePath(name: string): string | null;
    getAvailableTemplates(): string[];
    getAvailablePartials(): string[];
}
//# sourceMappingURL=themeLoader.d.ts.map