europa-build
Version:
Tool for generating and maintaining Europa plugins and presets
44 lines (43 loc) • 1.54 kB
TypeScript
import { Logger } from 'winston';
import { TemplateGenerator } from "./TemplateGenerator";
import { TemplateContext, TemplateProvider } from "./provider/TemplateProvider";
declare const _logger: unique symbol;
declare const _partials: unique symbol;
declare const _provider: unique symbol;
/**
* A {@link TemplateGenerator} implementation that uses Mustache to render templates.
*/
export declare class MustacheTemplateGenerator<C extends TemplateContext> implements TemplateGenerator<C> {
private readonly [_logger];
private [_partials];
private readonly [_provider];
/**
* Creates an instance of {@link MustacheTemplateGenerator} using the `options` provided.
*
* @param options - The options to be used.
*/
constructor(options: MustacheTemplateGeneratorOptions<C>);
generate(context: C, directory: string): Promise<void>;
private static formatOutput;
private generateDirectory;
private generateEntry;
private getPartials;
private getTemplatePath;
private static getTargetPath;
private static getTargetPathExcludingExtension;
private static verifyDirectoryEmptyOrNotExists;
}
/**
* The options used by {@link MustacheTemplateGenerator}.
*/
export declare type MustacheTemplateGeneratorOptions<C extends TemplateContext> = {
/**
* The parent logger to be used to create any children loggers.
*/
readonly parentLogger: Logger;
/**
* The template provider to be used.
*/
readonly provider: TemplateProvider<C>;
};
export {};