import type { StormConfig } from "@storm-software/config";
import { LogLevel } from "../types";
/**
 * Get the log function for a log level
 *
 * @param logLevel - The log level
 * @param config - The Storm configuration
 * @returns The log function
 */
export declare const getLogFn: (logLevel?: number | LogLevel, config?: Partial<StormConfig>) => ((message?: any) => void);
/**
 * Write a message to the console at the `fatal` log level
 *
 * @param message - The message to write
 * @param config - The Storm configuration
 */
export declare const writeFatal: (message?: any, config?: Partial<StormConfig>) => void;
/**
 * Write a message to the console at the `error` log level
 *
 * @param message - The message to write
 * @param config - The Storm configuration
 */
export declare const writeError: (message?: any, config?: Partial<StormConfig>) => void;
/**
 * Write a message to the console at the `warning` log level
 *
 * @param message - The message to write
 * @param config - The Storm configuration
 */
export declare const writeWarning: (message?: any, config?: Partial<StormConfig>) => void;
/**
 * Write a message to the console at the `info` log level
 *
 * @param message - The message to write
 * @param config - The Storm configuration
 */
export declare const writeInfo: (message?: any, config?: Partial<StormConfig>) => void;
/**
 * Write a message to the console at the `success` log level
 *
 * @param message - The message to write
 * @param config - The Storm configuration
 */
export declare const writeSuccess: (message?: any, config?: Partial<StormConfig>) => void;
/**
 * Write a message to the console at the `debug` log level
 *
 * @param message - The message to write
 * @param config - The Storm configuration
 */
export declare const writeDebug: (message?: any, config?: Partial<StormConfig>) => void;
/**
 * Write a message to the console at the `trace` log level
 *
 * @param message - The message to write
 * @param config - The Storm configuration
 */
export declare const writeTrace: (message?: any, config?: Partial<StormConfig>) => void;
/**
 * Write a message to the console at the `all` log level
 *
 * @param message - The message to write
 * @param config - The Storm configuration
 */
export declare const writeSystem: (message?: any, config?: Partial<StormConfig>) => void;
/**
 * Get a stopwatch function
 *
 * @param name - The name of the process
 * @returns The stopwatch function
 */
export declare const getStopwatch: (name: string) => () => void;
export declare const formatLogMessage: (message?: any, prefix?: string) => string;
