export declare const TEMPLATE_LAYER_MANIFEST_FILENAME = "wp-typia.layers.json"; declare const TEMPLATE_LAYER_MANIFEST_VERSION: 1; export interface ExternalTemplateLayerDefinition { description?: string; extends?: string[]; path: string; } export interface ExternalTemplateLayerManifest { layers: Record; version: typeof TEMPLATE_LAYER_MANIFEST_VERSION; } export interface ResolvedTemplateLayerEntry { dir: string; id: string; kind: 'built-in' | 'external'; } export interface ResolvedExternalTemplateLayers { entries: ResolvedTemplateLayerEntry[]; selectedLayerId: string; } export interface SelectableExternalTemplateLayer { description?: string; extends: string[]; id: string; } export declare function loadExternalTemplateLayerManifest(sourceRoot: string): Promise; export declare function listSelectableExternalTemplateLayers(sourceRoot: string): Promise; export declare function resolveExternalTemplateLayers({ externalLayerId, sourceRoot }: { externalLayerId?: string; sourceRoot: string; }): Promise; export declare function assertExternalTemplateLayersDoNotWriteProtectedOutputs({ externalEntries, protectedOutputPaths, view }: { externalEntries: readonly ResolvedTemplateLayerEntry[]; protectedOutputPaths: ReadonlySet; view: Record; }): Promise; export {};