@mdfriday/foundry
Version:
The core engine of MDFriday. Convert Markdown and shortcodes into fully themed static sites – Hugo-style, powered by TypeScript.
70 lines • 1.88 kB
TypeScript
import { BaseOfManager, TemplateInfo } from '../type';
/**
* BaseOf value object for managing base template inheritance
* TypeScript version of Go's BaseOf struct
*/
export declare class BaseOf implements BaseOfManager {
private baseof;
private needsBaseof;
/**
* Get template search order for finding base templates
*/
getTemplateSearchOrder(templateName: string): string[];
/**
* Get base template info by key
*/
getBaseOf(key: string): TemplateInfo | null;
/**
* Get template that needs base template by key
*/
getNeedsBaseOf(key: string): TemplateInfo | null;
/**
* Add base template
*/
addBaseOf(key: string, info: TemplateInfo): void;
/**
* Add template that needs base template
*/
addNeedsBaseOf(key: string, info: TemplateInfo): void;
/**
* Check if path is a base template path
*/
isBaseTemplatePath(filePath: string): boolean;
/**
* Check if template needs base template
*/
needsBaseOf(name: string, rawContent: string): boolean;
/**
* Check if template doesn't need base template
*/
private noBaseNeeded;
/**
* Check if template content needs base template
* Returns true if the first non-comment template block is a define block
*/
private needsBaseTemplate;
/**
* Get all base templates
*/
getAllBaseOf(): Map<string, TemplateInfo>;
/**
* Get all templates that need base templates
*/
getAllNeedsBaseOf(): Map<string, TemplateInfo>;
/**
* Clear all base template data
*/
clear(): void;
/**
* Get statistics
*/
getStats(): {
baseOfCount: number;
needsBaseOfCount: number;
};
}
/**
* Creates a new BaseOf instance
*/
export declare function newBaseOf(): BaseOf;
//# sourceMappingURL=baseof.d.ts.map