/** * @class TemplateInfo * @description Describes a template config */ export class TemplateConfig { /** * Creates a template * * @param {string} name - Template name * @param {string} version - Template version * @param {?string} description - Template description * @param {?(ScafflaterOptions|object)} options - Template options * @param {?object[]} parameters - Template parameters */ constructor(name: string, version: string, description?: string | null, options?: (typeof ScafflaterOptions | object) | null, parameters?: object[] | null); /** * Template name * * @description The template name must follow the pattern [a-z-]{3,} * @type {string} */ name: string; /** * Template description * * @type {string} */ description: string; /** * Template version * * @description Should follow the semver patterns (https://semver.org/) * @type {string} */ version: string; /** * Scafflater Options to generate template * * @type {ScafflaterOptions} */ options: typeof ScafflaterOptions; /** * Parameters to generate template. * * @description Scafflater uses Inquirer to get the parameters through scafflater-cli. The objects in this list must be assigned to inquirer question object(https://github.com/SBoudrias/Inquirer.js#questions). * @type {object[]} */ parameters: object[]; } import ScafflaterOptions = require("../options");