@altostra/core
Version:
Core library for shared types and logic
32 lines (31 loc) • 801 B
TypeScript
import type { BlueprintTemplate } from "../../blueprint/Blueprint/Blueprint";
/**
* An object describing a template, having a name, and originating from specified provider
*/
export interface TemplateDescriptor<TTemplatesProviderType extends string = string> {
type: TTemplatesProviderType;
name: string;
}
/**
* Metadata of a template
*/
export interface TemplateMetadata {
/**
* Template's description
*/
description: string;
/**
* An array of included files from the template's content
*
* A missing or empty list means all files are included
*/
includes?: string[];
/**
* An array of files that are excluded
*/
excludes?: string[];
/**
* List of blueprints to initialize projects with
*/
blueprints: [BlueprintTemplate];
}