import { WriteFileOptions } from 'fs-extra'; /** 获取文件内容时的上下文 */ interface IContext { } export interface IDefaultOption { /** 是否忽略生成该文件 */ ignore?: boolean; /** 如果文件存在,是否强制覆盖 */ isForceOverwrite?: boolean; /** 生成文件后是否尝试使用prettier来进行format代码格式化 */ prettier?: boolean; } export declare const defaultOption: IDefaultOption; export interface IFile extends IDefaultOption { /** 生成文件的路径 */ path: string | ((folderName: string) => string | Promise); content?: string | ((folderName: string, context: IContext) => string | object | Promise); /** 在创建文件前的钩子函数 */ before?: (filePath: string) => any; /** 会在创建文件后执行 */ after?: (filePath: string) => any; /** 写文件的选项 */ writeFileOptions?: WriteFileOptions; children?: IFile[]; } export interface ITemplateFileExport { fileList: IFile[]; defaultOption?: IDefaultOption; before?: (filePath: string) => any; after?: (filePath: string) => any; } export {};