import { ITemplateUtility, IContext, IDelegatedParameters } from '../interfaces'; import { ActionSnapshot } from '../models'; export declare class TemplateUtilitiesRegistry { private registry; private constructor(); private static pInstance; static get instance(): TemplateUtilitiesRegistry; static reset(): void; /** * Register template utilities * @param {ITemplateUtility} templateUtility * @return {TemplateUtilitiesRegistry} */ register(...templateUtility: ITemplateUtility[]): TemplateUtilitiesRegistry; /** * Unregister template utilities * @param {ITemplateUtility} templateUtility * @return {TemplateUtilitiesRegistry} */ unregister(...templateUtility: ITemplateUtility[]): TemplateUtilitiesRegistry; /** * Generate utilities for tempalte * @param {IContext} context action context * @param {ActionSnapshot} snapshot action snapshot * @param {IDelegatedParameters} parameters action parameters * @param {string} wd working directory * @return {{[key: string]: any}} */ generateUtilities(context: IContext, snapshot: ActionSnapshot, parameters: IDelegatedParameters, wd: string): { [key: string]: any; }; /** * Cleanup registry * @return {ActionHandlersRegistry} */ cleanup(): TemplateUtilitiesRegistry; }