UNPKG

alistair

Version:
92 lines (90 loc) 2.14 kB
type LogLevel = 'info' | 'warn' | 'error' | 'debug'; interface LoggerOptions { backend?: Record<LogLevel, (text: string) => void>; indentString?: string; } /** * Create a new logger * @param options Logger options * @returns a logger instance */ declare function logger({ backend, indentString, }?: LoggerOptions): { indent: (fn: () => void) => void; /** * Print an info message */ info: (...args: unknown[]) => void; /** * Print a success message */ success: (...args: unknown[]) => void; /** * Print a listening message */ listening: (...args: unknown[]) => void; /** * Print a debug message */ debug: (...args: unknown[]) => void; /** * Print a fatal message */ fatal: (...args: unknown[]) => void; /** * Print an error message */ error: (...args: unknown[]) => void; /** * Print a warning message */ warn: (...args: unknown[]) => void; }; /** * The default logger * * @example * ```ts * log.info('Started server') * log.listening('on 3000') * log.fatal(new Error('Failed to start server')) * log.indent(() => { * log.info('Listening for requests') * log.success('Request received') * log.error('Request failed', new Error('Failed to process request')) * }) * log.warn('Server is not responding') * log.debug('Server is responding') * ``` */ declare const log: { indent: (fn: () => void) => void; /** * Print an info message */ info: (...args: unknown[]) => void; /** * Print a success message */ success: (...args: unknown[]) => void; /** * Print a listening message */ listening: (...args: unknown[]) => void; /** * Print a debug message */ debug: (...args: unknown[]) => void; /** * Print a fatal message */ fatal: (...args: unknown[]) => void; /** * Print an error message */ error: (...args: unknown[]) => void; /** * Print a warning message */ warn: (...args: unknown[]) => void; }; export { type LogLevel, type LoggerOptions, log, logger };