export interface Template { id: string; name: string; summary: string; variables: TemplateVariable; type: 'template'; } export interface Scaffold { name: string; summary: string; variables: TemplateVariable; type: 'scaffold'; } export interface TemplateVariable { name: string; question?: string; hint?: string; suggest?: string; required?: boolean; hidden?: boolean; } export interface TemplateManifest { version: number; baseTemplateVariables: TemplateVariable[]; templates: Template[]; scaffolds: Scaffold[]; }