import type { Consola } from 'consola'; import { ConsoleReporter } from './reporters/console'; export * from './reporters/intercept'; /** * This interface tries to enforce more structured logs while still * allowing us to use Consola. Knowing the structure of all our * logs has a lot of benefits so going outside this interface. Update this * interface if something with a different structure needs to be logged. */ type Loggable = string | number | boolean; export interface Logger extends Consola { info(message: string, args?: Record): void; log(message: string, args?: Record): void; error(message: string, args?: Record): void; warn(message: string, args?: Record): void; debug(message: string, args?: Record): void; withTag(tag: string): Logger; } export declare const ConsoleReporterInstance: ConsoleReporter; /** * Updates the reporter's log levels from a config string. * * Format is like so: `*:warn,sdk:info` * @param logLevelConfig A log level string formatted for use in config files or env vars */ export declare const setLogLevelFromConfig: (logLevelConfig: string) => void; /** * @param logToJSON Whether console logs should be in JSON format */ export declare const setJSONLoggingFromConfig: (logToJSON: boolean) => void; /** * Updates the reporter's log prefix from a config string. * * Format is like so: `[%time%] [%level%] [%tag%]` * @param logPrefix A string formatted for use in config files or environment vars */ export declare const setLogPrefixFromConfig: (logPrefix: string) => void; /** * Enables color when logging */ export declare const setLogColorEnabledFromConfig: (enabled: boolean) => void; /** * Creates a logger instance with the desired default settings. */ export declare const createRootLogger: () => Logger; //# sourceMappingURL=index.d.ts.map