@vulcan-sql/core
Version:
Core package of VulcanSQL
22 lines (21 loc) • 939 B
TypeScript
import { ExtensionBase, TemplateEngineExtension } from '../../../models/index';
import { BaseCompilerEnvironment } from './base';
import * as nunjucks from 'nunjucks';
import { IValidatorLoader } from '../../validators/index';
/**
* Build phase environment is used when we compiling templates.
*/
export declare class BuildTimeCompilerEnvironment extends BaseCompilerEnvironment {
private extensions;
private astVisitors;
private metadataProviders;
private validatorLoader;
constructor(extensions: TemplateEngineExtension[] | undefined, validatorLoader: IValidatorLoader);
getExtensions(): ExtensionBase<any>[];
traverseAst(ast: nunjucks.nodes.Node): void;
/** Get some metadata from the AST tree, e.g. the errors defined by templates.
* It'll help use to validate templates, validate schema ...etc. */
getMetadata(): Record<string, any>;
private loadExtensions;
private loadExtension;
}