@ackplus/nest-dynamic-templates
Version:
A powerful and flexible dynamic template rendering library for NestJS applications with support for Nunjucks, Handlebars, EJS, Pug, MJML, Markdown, and more.
23 lines (22 loc) • 1.75 kB
TypeScript
import { Repository } from 'typeorm';
import { NestDynamicTemplateLayout } from '../entities/template-layout.entity';
import { TemplateLayoutFilterDto } from '../dto/template-layout-filter.dto';
import { TemplateEngineRegistryService } from './template-engine.registry';
import { RenderTemplateLayoutDto, RenderTemplateLayoutOutput } from '../dto/render-template-layout.dto';
import { CreateTemplateLayoutDto } from '../dto/create-template-layout.dto';
import { RenderContentTemplateLayoutDto } from '../dto/render-content-template-layout.dto';
export declare class TemplateLayoutService {
private readonly layoutRepository;
private readonly engineRegistry;
constructor(layoutRepository: Repository<NestDynamicTemplateLayout>, engineRegistry: TemplateEngineRegistryService);
render(renderDto: RenderTemplateLayoutDto): Promise<RenderTemplateLayoutOutput>;
renderContent(input: RenderContentTemplateLayoutDto): Promise<string>;
private asRenderError;
getTemplateLayouts(filter?: TemplateLayoutFilterDto): Promise<NestDynamicTemplateLayout[]>;
getTemplateLayoutById(id: string): Promise<NestDynamicTemplateLayout | null>;
findTemplateLayout(name: string, scope?: string, scopeId?: string, locale?: string): Promise<NestDynamicTemplateLayout | null>;
createTemplateLayout(data: CreateTemplateLayoutDto): Promise<NestDynamicTemplateLayout>;
overwriteSystemTemplateLayout(templateId: string, updates: Partial<CreateTemplateLayoutDto>): Promise<NestDynamicTemplateLayout>;
updateTemplateLayout(id: string, updates: Partial<CreateTemplateLayoutDto>, canUpdateSystemTemplate?: boolean): Promise<NestDynamicTemplateLayout>;
deleteTemplateLayout(id: string, canDeleteSystemTemplate?: boolean): Promise<void>;
}