@baseplate-dev/sync
Version:
Library for syncing Baseplate descriptions
23 lines • 1.12 kB
TypeScript
import type { TemplateFileExtractor } from './template-file-extractor.js';
import { TemplateExtractorContext } from './template-extractor-context.js';
interface InitializeTemplateExtractorPluginsInput {
templateExtractors: TemplateFileExtractor[];
context: TemplateExtractorContext;
}
interface InitializeTemplateExtractorPluginsResult {
pluginMap: Map<string, unknown>;
hooks: {
afterExtract: (() => void | Promise<void>)[];
afterWrite: (() => void | Promise<void>)[];
};
}
/**
* Initializes template extractor plugins by extracting all plugins from template extractors,
* sorting them by dependencies using topological sort, and initializing them in correct order.
*
* @param input - The input object containing template extractors and context
* @returns An object containing the plugin map and collected hooks
*/
export declare function initializeTemplateExtractorPlugins({ templateExtractors, context, }: InitializeTemplateExtractorPluginsInput): Promise<InitializeTemplateExtractorPluginsResult>;
export {};
//# sourceMappingURL=initialize-template-extractor-plugins.d.ts.map