import chalk from "chalk";
type LogLevel = "error" | "warn" | "info" | "debug" | "verbose" | "silly";
type LogType = "error" | "info" | "warn" | "debug" | "table" | "log";
type ChalkColorName = keyof typeof chalk;
interface LoggerOptions {
    level?: LogLevel;
    timestamp?: boolean;
    timestampFormat?: "iso" | "locale" | "time";
    prefix?: string;
    colorize?: boolean;
}
export declare class AppLogger {
    private static logLevels;
    private static currentLevel;
    private static options;
    static debugs_state: boolean;
    /**
     * Configure logger options
     */
    static configure(options: LoggerOptions): void;
    /**
     * Format timestamp based on configuration
     */
    private static formatTimestamp;
    /**
     * Apply chalk color safely
     */
    private static applyColor;
    /**
     * Core logging method
     */
    static appLog(props: {
        messages: any[];
        type: LogType;
        level: LogLevel;
        colorName: ChalkColorName;
    }): void;
    /**
     * Log an informational message
     */
    static log(...messages: any[]): void;
    /**
     * Log an informational message
     */
    static info(...messages: any[]): void;
    /**
     * Log a warning message
     */
    static warn(...messages: any[]): void;
    /**
     * Log an error message
     */
    static error(...messages: any[]): void;
    /**
     * Log a debug message
     */
    static debug(...messages: any[]): void;
    /**
     * Log a verbose message
     */
    static verbose(...messages: any[]): void;
    /**
     * Log detailed or silly debug information
     */
    static silly(...messages: any[]): void;
    /**
     * Log data as a table
     */
    static table(tableData: any[], columns?: string[]): void;
    /**
     * Log start of a process with a title
     */
    static start(title: string): void;
    /**
     * Log successful completion of a process
     */
    static success(message: string): void;
    /**
     * Log failure of a process
     */
    static fail(message: string): void;
}
export {};
//# sourceMappingURL=AppLogger.d.ts.map