import { Logger } from '@xpack/logger'; import { LiquidSubstitutionsVariables } from '../data/substitutions-variables.js'; import { LiquidEngine } from './liquid-engine.js'; import { JsonTemplateMatrix } from '../types/json.js'; export interface TemplateExpanderConstructorParameters { engine: LiquidEngine; substitutionsVariables: LiquidSubstitutionsVariables; log: Logger; } export type InstanceFactoryCallback = (expandedName: string, combination: Record, templateContent: TTemplate, originalTemplateName: string) => TInstance; export declare class TemplateExpander { readonly engine: LiquidEngine; readonly substitutionsVariables: LiquidSubstitutionsVariables; readonly log: Logger; constructor({ engine, substitutionsVariables, log, }: TemplateExpanderConstructorParameters); expandTemplate({ templateName, matrix, templateContent, templateType, instanceFactory, }: { templateName: string; matrix: JsonTemplateMatrix; templateContent: TTemplate; templateType: string; instanceFactory: InstanceFactoryCallback; }): Promise>; protected _expandName({ templateName, combination, templateType, }: { templateName: string; combination: Record; templateType: string; }): Promise; } //# sourceMappingURL=template-expander.d.ts.map