import { TemplateEngineEnum, TemplateLanguageEnum } from './template.types';
export interface EngineConfig {
    enabled: boolean;
    options?: Record<string, any>;
}
export interface FilterOptions {
    name: string;
    filter: (...args: any[]) => any;
}
export type EngineOptions<T> = T & {};
export type CustomEngineOptions = {
    filters?: Record<string, FilterOptions['filter']>;
};
export interface NestDynamicTemplatesModuleConfig {
    isGlobal?: boolean;
    enginesOptions?: {
        filters?: CustomEngineOptions['filters'];
        template?: Partial<Record<TemplateEngineEnum, EngineOptions<any>>>;
        language?: Partial<Record<TemplateLanguageEnum, EngineOptions<any>>>;
    };
    engines?: {
        template?: TemplateEngineEnum[];
        language?: TemplateLanguageEnum[];
    };
}
