@reactionable/cli
Version:
25 lines (24 loc) • 1.34 kB
TypeScript
/// <reference types="node" />
import { FileFactory } from "../file/FileFactory";
import { FileService } from "../file/FileService";
import { TemplateAdapter } from "./adapters/TemplateAdapter";
import { TemplateContext } from "./TemplateContext";
import { TemplateFileService } from "./TemplateFileService";
declare type TemplateConfigItem = string[] | TemplateConfig | string;
export declare type TemplateConfig = {
[key: string]: TemplateConfigItem;
};
export declare class TemplateService {
private readonly fileService;
private readonly fileFactory;
private readonly templateFileService;
private readonly templateAdapter;
constructor(fileService: FileService, fileFactory: FileFactory, templateFileService: TemplateFileService, templateAdapter: TemplateAdapter);
renderTemplate(dirPath: string, namespace: string, context?: TemplateContext): Promise<void>;
renderTemplateFile(templateKey: string, context: TemplateContext): Promise<string>;
private renderTemplateFromConfig;
getTemplateConfig(namespace: string, context: TemplateContext): Promise<TemplateConfig>;
getTemplateKey(dirPath: string, filepath: string, namespace: string): string;
createFileFromTemplate(filePath: string, templateKey: string, context: TemplateContext, encoding?: BufferEncoding): Promise<void>;
}
export {};