import type { LogEntry, LoggerConfig } from '../types/logger';
declare class Logger {
    private config;
    private logEntries;
    constructor(config?: Partial<LoggerConfig>);
    private shouldLog;
    private createLogEntry;
    private formatConsoleMessage;
    private getConsoleMethod;
    private outputToConsole;
    private addToBuffer;
    private sendToRemote;
    private log;
    debug(component: string, message: string, data?: any, method?: string): void;
    info(component: string, message: string, data?: any, method?: string): void;
    warn(component: string, message: string, data?: any, method?: string): void;
    error(component: string, message: string, error?: Error, data?: any, method?: string): void;
    time(label: string): void;
    timeEnd(label: string, component: string, message?: string): number | undefined;
    memory(component: string, label?: string): void;
    flushLogs(): Promise<void>;
    getRecentLogs(count?: number): LogEntry[];
    configure(newConfig: Partial<LoggerConfig>): void;
    getConfig(): LoggerConfig;
}
export declare const logger: Logger;
export declare function createLogger(config?: Partial<LoggerConfig>): Logger;
export { Logger };
//# sourceMappingURL=logger.d.ts.map