@tsed/cli
Version:
CLI to bootstrap your Ts.ED project
37 lines (36 loc) • 1.28 kB
TypeScript
import { CliFs } from "@tsed/cli-core";
import type { SourceFile } from "ts-morph";
import type { RenderDataContext } from "../interfaces/index.js";
import type { DefineTemplateOptions } from "../utils/defineTemplate.js";
export type TemplateRenderOptions = {
name?: string;
symbolName?: string;
symbolPath?: string;
directory?: string;
from?: string;
} & Partial<RenderDataContext>;
export type TemplateRenderReturnType = {
templateId: string;
content: string;
outputPath: string;
name?: string;
symbolName?: string;
symbolPath?: string;
symbolPathBasename?: string;
source?: SourceFile;
};
export declare class CliTemplatesService {
#private;
readonly fs: CliFs;
get rootDir(): string;
get srcDir(): string;
get templatesDir(): string;
$onInit(): Promise<void>;
loadTemplates(): Promise<void>;
getAll(): DefineTemplateOptions[];
find(id?: string): DefineTemplateOptions[];
get(id: string): DefineTemplateOptions | undefined;
render(templateId: string, data: TemplateRenderOptions): Promise<TemplateRenderReturnType | undefined>;
getRenderedFiles(): TemplateRenderReturnType[];
protected pushRenderResult(renderedFile: TemplateRenderReturnType): TemplateRenderReturnType;
}