import chalk from 'chalk' type levelMap = { error: any, warn: any, info: any, success: any, [propName: string]: any } const levelInfoMap: levelMap = { error: chalk.bold.red, warn: chalk.keyword('orange'), info: chalk.blue, success: chalk.green, } const logWrapper = (level: string) => { return (...args: any[]) => console.log(levelInfoMap[level](`[${level}]`, ...args)) } export default { error: logWrapper('error'), warn: logWrapper('warn'), success: logWrapper('success'), info: logWrapper('info') }